From 53cd6c4789a6247b990f966fb8ff54d8bc5fb7fd Mon Sep 17 00:00:00 2001 From: Elton Date: Mon, 15 Nov 2021 19:50:28 +0000 Subject: [PATCH] Doc updates in support of promoting capacity-type to a well known label (for v0.4.3 release) (#790) Co-authored-by: Elton Pinto --- website/content/en/docs/cloud-providers/AWS.md | 6 +++--- website/content/en/docs/faqs.md | 2 +- website/content/en/docs/getting-started/_index.md | 2 +- website/content/en/docs/provisioner-crd.md | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/website/content/en/docs/cloud-providers/AWS.md b/website/content/en/docs/cloud-providers/AWS.md index b0b9cd794050..d41a3627b5b8 100644 --- a/website/content/en/docs/cloud-providers/AWS.md +++ b/website/content/en/docs/cloud-providers/AWS.md @@ -65,7 +65,7 @@ IDs.](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html) ### Capacity Type -- key: `node.k8s.aws/capacity-type` +- key: `karpenter.sh/capacity-type` - values - `on-demand` (default) - `spot` @@ -82,7 +82,7 @@ be used for critical workloads that do not tolerate interruptions. ```yaml spec: requirements: - - key: node.k8s.aws/capacity-type + - key: karpenter.sh/capacity-type operator: In values: ["spot", "on-demand"] ``` @@ -94,7 +94,7 @@ spec: template: spec: nodeSelector: - node.k8s.aws/capacity-type: spot + karpenter.sh/capacity-type: spot ``` ### Architecture diff --git a/website/content/en/docs/faqs.md b/website/content/en/docs/faqs.md index 7241819c2acc..c6419af417b0 100644 --- a/website/content/en/docs/faqs.md +++ b/website/content/en/docs/faqs.md @@ -20,7 +20,7 @@ No. Provisioners work in tandem with the Kube Scheduler. When capacity is uncons ### How should I define scheduling constraints? Karpenter takes a layered approach to scheduling constraints. Karpenter comes with a set of global defaults, which may be overriden by Provisioner-level defaults. Further, these may be overriden by pod scheduling constraints. This model requires minimal configuration for most use cases, and supports diverse workloads using a single Provisioner. ### Does Karpenter support node selectors? -Yes. Node selectors are an opt-in mechanism which allow users to specify the nodes on which a pod can scheduled. Karpenter recognizes [well-known node selectors](https://kubernetes.io/docs/reference/labels-annotations-taints/) on unschedulable pods and uses them to constrain the nodes it provisions. You can read more about the well-known node selectors supported by Karpenter in the [Concepts](/docs/concepts/#well-known-labels) documentation. For example, `node.kubernetes.io/instance-type`, `topology.kubernetes.io/zone`, `kubernetes.io/os`, `kubernetes.io/arch` are supported, and will ensure that provisioned nodes are constrained accordingly. Additionally, users may specify arbitrary labels, which will be automatically applied to every node launched by the Provisioner. +Yes. Node selectors are an opt-in mechanism which allow users to specify the nodes on which a pod can scheduled. Karpenter recognizes [well-known node selectors](https://kubernetes.io/docs/reference/labels-annotations-taints/) on unschedulable pods and uses them to constrain the nodes it provisions. You can read more about the well-known node selectors supported by Karpenter in the [Concepts](/docs/concepts/#well-known-labels) documentation. For example, `node.kubernetes.io/instance-type`, `topology.kubernetes.io/zone`, `kubernetes.io/os`, `kubernetes.io/arch`, `karpenter.sh/capacity-type` are supported, and will ensure that provisioned nodes are constrained accordingly. Additionally, users may specify arbitrary labels, which will be automatically applied to every node launched by the Provisioner. ### Does Karpenter support taints? Yes. Taints are an opt-out mechanism which allows users to specify the nodes on which a pod cannot be scheduled. Unlike node selectors, Karpenter does not automatically taint nodes in response to pod tolerations. Similar to node selectors, users may specify taints on their Provisioner, which will be automatically added to every node it provisions. This means that if a Provisioner is configured with taints, any incoming pods will not be scheduled unless the taints are tolerated. diff --git a/website/content/en/docs/getting-started/_index.md b/website/content/en/docs/getting-started/_index.md index 9219af013716..23ab0deb09b3 100644 --- a/website/content/en/docs/getting-started/_index.md +++ b/website/content/en/docs/getting-started/_index.md @@ -192,7 +192,7 @@ metadata: name: default spec: requirements: - - key: node.k8s.aws/capacity-type + - key: karpenter.sh/capacity-type operator: In values: ["spot"] provider: diff --git a/website/content/en/docs/provisioner-crd.md b/website/content/en/docs/provisioner-crd.md index 1e7a4903ba25..be3069c67ecc 100644 --- a/website/content/en/docs/provisioner-crd.md +++ b/website/content/en/docs/provisioner-crd.md @@ -45,7 +45,7 @@ spec: - key: "kubernetes.io/os" # If not included, all operating systems are considered operator: In values: ["linux"] - - key: "node.k8s.aws/capacity-type" # If not included, the webhook for the AWS cloud provider will default to on-demand + - key: "karpenter.sh/capacity-type" # If not included, the webhook for the AWS cloud provider will default to on-demand operator: In values: ["spot", "on-demand"] # These fields vary per cloud provider, see your cloud provider specific documentation