Skip to content

Commit

Permalink
docs: Add patch updates to docs (#5870)
Browse files Browse the repository at this point in the history
  • Loading branch information
jonathan-innis authored Mar 14, 2024
1 parent 5372379 commit 7d35e14
Show file tree
Hide file tree
Showing 39 changed files with 152 additions and 111 deletions.
4 changes: 2 additions & 2 deletions charts/karpenter-crd/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: karpenter-crd
description: A Helm chart for Karpenter Custom Resource Definitions (CRDs)
type: application
version: 0.35.1
appVersion: 0.35.1
version: 0.35.2
appVersion: 0.35.2
keywords:
- cluster
- node
Expand Down
4 changes: 2 additions & 2 deletions charts/karpenter/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: karpenter
description: A Helm chart for Karpenter, an open-source node provisioning project built for Kubernetes.
type: application
version: 0.35.1
appVersion: 0.35.1
version: 0.35.2
appVersion: 0.35.2
keywords:
- cluster
- node
Expand Down
6 changes: 3 additions & 3 deletions charts/karpenter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,9 @@ cosign verify public.ecr.aws/karpenter/karpenter:0.35.1 \
| controller.envFrom | list | `[]` | |
| controller.extraVolumeMounts | list | `[]` | Additional volumeMounts for the controller pod. |
| controller.healthProbe.port | int | `8081` | The container port to use for http health probe. |
| controller.image.digest | string | `"sha256:2872aea8b875ca1f543d0a4f369364c5c4baf6a463c6b2253a75406a7ab9025b"` | SHA256 digest of the controller image. |
| controller.image.digest | string | `"sha256:38b7f77ef417c1d52b8f6ba1174b2a070dd6179c230525dace863897891d7c5b"` | SHA256 digest of the controller image. |
| controller.image.repository | string | `"public.ecr.aws/karpenter/controller"` | Repository path to the controller image. |
| controller.image.tag | string | `"0.35.1"` | Tag of the controller image. |
| controller.image.tag | string | `"0.35.2"` | Tag of the controller image. |
| controller.metrics.port | int | `8000` | The container port to use for metrics. |
| controller.resources | object | `{}` | Resources for the controller pod. |
| controller.sidecarContainer | list | `[]` | Additional sidecarContainer config |
Expand Down Expand Up @@ -78,7 +78,7 @@ cosign verify public.ecr.aws/karpenter/karpenter:0.35.1 \
| podDisruptionBudget.maxUnavailable | int | `1` | |
| podDisruptionBudget.name | string | `"karpenter"` | |
| podLabels | object | `{}` | Additional labels for the pod. |
| podSecurityContext | object | `{"fsGroup":65536}` | SecurityContext for the pod. |
| podSecurityContext | object | `{"fsGroup":65532}` | SecurityContext for the pod. |
| priorityClassName | string | `"system-cluster-critical"` | PriorityClass name for the pod. |
| replicas | int | `2` | Number of replicas. |
| revisionHistoryLimit | int | `10` | The number of old ReplicaSets to retain to allow rollback. |
Expand Down
4 changes: 2 additions & 2 deletions charts/karpenter/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -99,9 +99,9 @@ controller:
# -- Repository path to the controller image.
repository: public.ecr.aws/karpenter/controller
# -- Tag of the controller image.
tag: 0.35.1
tag: 0.35.2
# -- SHA256 digest of the controller image.
digest: sha256:2872aea8b875ca1f543d0a4f369364c5c4baf6a463c6b2253a75406a7ab9025b
digest: sha256:38b7f77ef417c1d52b8f6ba1174b2a070dd6179c230525dace863897891d7c5b
# -- Additional environment variables for the controller pod.
env: []
# - name: AWS_REGION
Expand Down
18 changes: 3 additions & 15 deletions hack/docs/compatibility-karpenter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,24 +36,12 @@ compatibility:
- appVersion: 0.32.x
minK8sVersion: 1.23
maxK8sVersion: 1.28
- appVersion: 0.33.0
- appVersion: 0.33.x
minK8sVersion: 1.23
maxK8sVersion: 1.28
- appVersion: 0.33.1
minK8sVersion: 1.23
maxK8sVersion: 1.28
- appVersion: 0.34.0
minK8sVersion: 1.23
maxK8sVersion: 1.29
- appVersion: 0.34.1
minK8sVersion: 1.23
maxK8sVersion: 1.29
- appVersion: 0.35.0
minK8sVersion: 1.23
maxK8sVersion: 1.29
- appVersion: 0.34.2
- appVersion: 0.34.x
minK8sVersion: 1.23
maxK8sVersion: 1.29
- appVersion: 0.35.1
- appVersion: 0.35.x
minK8sVersion: 1.23
maxK8sVersion: 1.29
4 changes: 2 additions & 2 deletions website/content/en/docs/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ See [Configuring NodePools]({{< ref "./concepts/#configuring-nodepools" >}}) for
AWS is the first cloud provider supported by Karpenter, although it is designed to be used with other cloud providers as well.

### Can I write my own cloud provider for Karpenter?
Yes, but there is no documentation yet for it. Start with Karpenter's GitHub [cloudprovider](https://github.com/aws/karpenter-core/tree/v0.35.1/pkg/cloudprovider) documentation to see how the AWS provider is built, but there are other sections of the code that will require changes too.
Yes, but there is no documentation yet for it. Start with Karpenter's GitHub [cloudprovider](https://github.com/aws/karpenter-core/tree/v0.35.2/pkg/cloudprovider) documentation to see how the AWS provider is built, but there are other sections of the code that will require changes too.

### What operating system nodes does Karpenter deploy?
Karpenter uses the OS defined by the [AMI Family in your EC2NodeClass]({{< ref "./concepts/nodeclasses#specamifamily" >}}).
Expand All @@ -26,7 +26,7 @@ Karpenter has multiple mechanisms for configuring the [operating system]({{< ref
Karpenter is flexible to multi-architecture configurations using [well known labels]({{< ref "./concepts/scheduling/#supported-labels">}}).

### What RBAC access is required?
All the required RBAC rules can be found in the Helm chart template. See [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/clusterrole-core.yaml), [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/clusterrole.yaml), [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/rolebinding.yaml), and [role.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/role.yaml) files for details.
All the required RBAC rules can be found in the Helm chart template. See [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/clusterrole-core.yaml), [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/clusterrole.yaml), [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/rolebinding.yaml), and [role.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/role.yaml) files for details.

### Can I run Karpenter outside of a Kubernetes cluster?
Yes, as long as the controller has network and IAM/RBAC access to the Kubernetes API and your provider API.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ After setting up the tools, set the Karpenter and Kubernetes version:

```bash
export KARPENTER_NAMESPACE="kube-system"
export KARPENTER_VERSION="0.35.1"
export KARPENTER_VERSION="0.35.2"
export K8S_VERSION="1.29"
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ One for your Karpenter node role and one for your existing node group.
First set the Karpenter release you want to deploy.
```bash
export KARPENTER_VERSION="0.35.1"
export KARPENTER_VERSION="0.35.2"
```

We can now generate a full Karpenter deployment yaml from the Helm chart.
Expand Down Expand Up @@ -133,7 +133,7 @@ Now that our deployment is ready we can create the karpenter namespace, create t
## Create default NodePool
We need to create a default NodePool so Karpenter knows what types of nodes we want for unscheduled workloads. You can refer to some of the [example NodePool](https://github.com/aws/karpenter/tree/v0.35.1/examples/v1beta1) for specific needs.
We need to create a default NodePool so Karpenter knows what types of nodes we want for unscheduled workloads. You can refer to some of the [example NodePool](https://github.com/aws/karpenter/tree/v0.35.2/examples/v1beta1) for specific needs.
{{% script file="./content/en/{VERSION}/getting-started/migrating-from-cas/scripts/step10-create-nodepool.sh" language="bash" %}}
Expand Down
2 changes: 1 addition & 1 deletion website/content/en/docs/reference/cloudformation.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ These descriptions should allow you to understand:
To download a particular version of `cloudformation.yaml`, set the version and use `curl` to pull the file to your local system:

```bash
export KARPENTER_VERSION="0.35.1"
export KARPENTER_VERSION="0.35.2"
curl https://raw.githubusercontent.com/aws/karpenter-provider-aws/v"${KARPENTER_VERSION}"/website/content/en/preview/getting-started/getting-started-with-karpenter/cloudformation.yaml > cloudformation.yaml
```

Expand Down
10 changes: 5 additions & 5 deletions website/content/en/docs/reference/threat-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ A Cluster Developer has the ability to create pods via `Deployments`, `ReplicaSe

Karpenter has permissions to create and manage cloud instances. Karpenter has Kubernetes API permissions to create, update, and remove nodes, as well as evict pods. For a full list of the permissions, see the RBAC rules in the helm chart template. Karpenter also has AWS IAM permissions to create instances with IAM roles.

* [aggregate-clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/aggregate-clusterrole.yaml)
* [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/clusterrole-core.yaml)
* [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/clusterrole.yaml)
* [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/rolebinding.yaml)
* [role.yaml](https://github.com/aws/karpenter/blob/v0.35.1/charts/karpenter/templates/role.yaml)
* [aggregate-clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/aggregate-clusterrole.yaml)
* [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/clusterrole-core.yaml)
* [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/clusterrole.yaml)
* [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/rolebinding.yaml)
* [role.yaml](https://github.com/aws/karpenter/blob/v0.35.2/charts/karpenter/templates/role.yaml)

## Assumptions

Expand Down
8 changes: 4 additions & 4 deletions website/content/en/docs/upgrading/upgrade-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ If you get the error `invalid ownership metadata; label validation error:` while
In general, you can reapply the CRDs in the `crds` directory of the Karpenter Helm chart:
```shell
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.1/pkg/apis/crds/karpenter.sh_nodepools.yaml
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.1/pkg/apis/crds/karpenter.sh_nodeclaims.yaml
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.1/pkg/apis/crds/karpenter.k8s.aws_ec2nodeclasses.yaml
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.2/pkg/apis/crds/karpenter.sh_nodepools.yaml
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.2/pkg/apis/crds/karpenter.sh_nodeclaims.yaml
kubectl apply -f https://raw.githubusercontent.com/aws/karpenter/v0.35.2/pkg/apis/crds/karpenter.k8s.aws_ec2nodeclasses.yaml
```
<!--
Expand All @@ -40,7 +40,7 @@ WHEN CREATING A NEW SECTION OF THE UPGRADE GUIDANCE FOR NEWER VERSIONS, ENSURE T
### Upgrading to `0.35.0`+
{{% alert title="Warning" color="warning" %}}
`0.33.0`+ _only_ supports Karpenter v1beta1 APIs and will not work with existing Provisioner, AWSNodeTemplate or Machine alpha APIs. Do not upgrade to `0.35.1`+ without first [upgrading to `0.32.x`]({{<ref "#upgrading-to-0320" >}}). This version supports both the alpha and beta APIs, allowing you to migrate all of your existing APIs to beta APIs without experiencing downtime.
`0.33.0`+ _only_ supports Karpenter v1beta1 APIs and will not work with existing Provisioner, AWSNodeTemplate or Machine alpha APIs. Do not upgrade to `0.35.0`+ without first [upgrading to `0.32.x`]({{<ref "#upgrading-to-0320" >}}). This version supports both the alpha and beta APIs, allowing you to migrate all of your existing APIs to beta APIs without experiencing downtime.
{{% /alert %}}
* Karpenter OCI tags and Helm chart version are now valid semantic versions, meaning that the `v` prefix from the git tag has been removed and they now follow the `x.y.z` pattern.
Expand Down
53 changes: 53 additions & 0 deletions website/content/en/preview/reference/instance-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -3945,6 +3945,32 @@ below are the resources available with some assumptions and after the instance o
|pods|737|
|vpc.amazonaws.com/efa|1|
|vpc.amazonaws.com/pod-eni|107|
### `c7gd.metal`
#### Labels
| Label | Value |
|--|--|
|karpenter.k8s.aws/instance-category|c|
|karpenter.k8s.aws/instance-cpu|64|
|karpenter.k8s.aws/instance-cpu-manufacturer|aws|
|karpenter.k8s.aws/instance-encryption-in-transit-supported|true|
|karpenter.k8s.aws/instance-family|c7gd|
|karpenter.k8s.aws/instance-generation|7|
|karpenter.k8s.aws/instance-hypervisor||
|karpenter.k8s.aws/instance-local-nvme|3800|
|karpenter.k8s.aws/instance-memory|131072|
|karpenter.k8s.aws/instance-network-bandwidth|30000|
|karpenter.k8s.aws/instance-size|metal|
|kubernetes.io/arch|arm64|
|kubernetes.io/os|linux|
|node.kubernetes.io/instance-type|c7gd.metal|
#### Resources
| Resource | Quantity |
|--|--|
|cpu|63770m|
|ephemeral-storage|17Gi|
|memory|112720Mi|
|pods|737|
|vpc.amazonaws.com/efa|1|
## c7gn Family
### `c7gn.medium`
#### Labels
Expand Down Expand Up @@ -11882,6 +11908,7 @@ below are the resources available with some assumptions and after the instance o
|karpenter.k8s.aws/instance-hypervisor||
|karpenter.k8s.aws/instance-local-nvme|3800|
|karpenter.k8s.aws/instance-memory|262144|
|karpenter.k8s.aws/instance-network-bandwidth|30000|
|karpenter.k8s.aws/instance-size|metal|
|kubernetes.io/arch|arm64|
|kubernetes.io/os|linux|
Expand Down Expand Up @@ -16907,6 +16934,32 @@ below are the resources available with some assumptions and after the instance o
|pods|737|
|vpc.amazonaws.com/efa|1|
|vpc.amazonaws.com/pod-eni|107|
### `r7gd.metal`
#### Labels
| Label | Value |
|--|--|
|karpenter.k8s.aws/instance-category|r|
|karpenter.k8s.aws/instance-cpu|64|
|karpenter.k8s.aws/instance-cpu-manufacturer|aws|
|karpenter.k8s.aws/instance-encryption-in-transit-supported|true|
|karpenter.k8s.aws/instance-family|r7gd|
|karpenter.k8s.aws/instance-generation|7|
|karpenter.k8s.aws/instance-hypervisor||
|karpenter.k8s.aws/instance-local-nvme|3800|
|karpenter.k8s.aws/instance-memory|524288|
|karpenter.k8s.aws/instance-network-bandwidth|30000|
|karpenter.k8s.aws/instance-size|metal|
|kubernetes.io/arch|arm64|
|kubernetes.io/os|linux|
|node.kubernetes.io/instance-type|r7gd.metal|
#### Resources
| Resource | Quantity |
|--|--|
|cpu|63770m|
|ephemeral-storage|17Gi|
|memory|476445Mi|
|pods|737|
|vpc.amazonaws.com/efa|1|
## r7i Family
### `r7i.large`
#### Labels
Expand Down
2 changes: 1 addition & 1 deletion website/content/en/preview/upgrading/upgrade-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ WHEN CREATING A NEW SECTION OF THE UPGRADE GUIDANCE FOR NEWER VERSIONS, ENSURE T
### Upgrading to `0.35.0`+
{{% alert title="Warning" color="warning" %}}
`0.33.0`+ _only_ supports Karpenter v1beta1 APIs and will not work with existing Provisioner, AWSNodeTemplate or Machine alpha APIs. Do not upgrade to `0.35.1`+ without first [upgrading to `0.32.x`]({{<ref "#upgrading-to-0320" >}}). This version supports both the alpha and beta APIs, allowing you to migrate all of your existing APIs to beta APIs without experiencing downtime.
`0.33.0`+ _only_ supports Karpenter v1beta1 APIs and will not work with existing Provisioner, AWSNodeTemplate or Machine alpha APIs. Do not upgrade to `0.35.0`+ without first [upgrading to `0.32.x`]({{<ref "#upgrading-to-0320" >}}). This version supports both the alpha and beta APIs, allowing you to migrate all of your existing APIs to beta APIs without experiencing downtime.
{{% /alert %}}
* Karpenter OCI tags and Helm chart version are now valid semantic versions, meaning that the `v` prefix from the git tag has been removed and they now follow the `x.y.z` pattern.
Expand Down
4 changes: 2 additions & 2 deletions website/content/en/v0.32/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ See [Configuring NodePools]({{< ref "./concepts/#configuring-nodepools" >}}) for
AWS is the first cloud provider supported by Karpenter, although it is designed to be used with other cloud providers as well.

### Can I write my own cloud provider for Karpenter?
Yes, but there is no documentation yet for it. Start with Karpenter's GitHub [cloudprovider](https://github.com/aws/karpenter-core/tree/v0.32.7/pkg/cloudprovider) documentation to see how the AWS provider is built, but there are other sections of the code that will require changes too.
Yes, but there is no documentation yet for it. Start with Karpenter's GitHub [cloudprovider](https://github.com/aws/karpenter-core/tree/v0.32.8/pkg/cloudprovider) documentation to see how the AWS provider is built, but there are other sections of the code that will require changes too.

### What operating system nodes does Karpenter deploy?
When using v1beta1 APIs, Karpenter uses the OS defined by the [AMI Family in your EC2NodeClass]({{< ref "./concepts/nodeclasses#specamifamily" >}}).
Expand All @@ -27,7 +27,7 @@ Karpenter has multiple mechanisms for configuring the [operating system]({{< ref
Karpenter is flexible to multi-architecture configurations using [well known labels]({{< ref "./concepts/scheduling/#supported-labels">}}).

### What RBAC access is required?
All the required RBAC rules can be found in the helm chart template. See [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.32.7/charts/karpenter/templates/clusterrole-core.yaml), [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.32.7/charts/karpenter/templates/clusterrole.yaml), [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.32.7/charts/karpenter/templates/rolebinding.yaml), and [role.yaml](https://github.com/aws/karpenter/blob/v0.32.7/charts/karpenter/templates/role.yaml) files for details.
All the required RBAC rules can be found in the helm chart template. See [clusterrole-core.yaml](https://github.com/aws/karpenter/blob/v0.32.8/charts/karpenter/templates/clusterrole-core.yaml), [clusterrole.yaml](https://github.com/aws/karpenter/blob/v0.32.8/charts/karpenter/templates/clusterrole.yaml), [rolebinding.yaml](https://github.com/aws/karpenter/blob/v0.32.8/charts/karpenter/templates/rolebinding.yaml), and [role.yaml](https://github.com/aws/karpenter/blob/v0.32.8/charts/karpenter/templates/role.yaml) files for details.

### Can I run Karpenter outside of a Kubernetes cluster?
Yes, as long as the controller has network and IAM/RBAC access to the Kubernetes API and your provider API.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ After setting up the tools, set the Karpenter and Kubernetes version:

```bash
export KARPENTER_NAMESPACE=karpenter
export KARPENTER_VERSION=v0.32.7
export KARPENTER_VERSION=v0.32.8
export K8S_VERSION=1.28
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ One for your Karpenter node role and one for your existing node group.
First set the Karpenter release you want to deploy.
```bash
export KARPENTER_VERSION=v0.32.7
export KARPENTER_VERSION=v0.32.8
```

We can now generate a full Karpenter deployment yaml from the helm chart.
Expand Down Expand Up @@ -133,7 +133,7 @@ Now that our deployment is ready we can create the karpenter namespace, create t
## Create default NodePool
We need to create a default NodePool so Karpenter knows what types of nodes we want for unscheduled workloads. You can refer to some of the [example NodePool](https://github.com/aws/karpenter/tree/v0.32.7/examples/v1beta1) for specific needs.
We need to create a default NodePool so Karpenter knows what types of nodes we want for unscheduled workloads. You can refer to some of the [example NodePool](https://github.com/aws/karpenter/tree/v0.32.8/examples/v1beta1) for specific needs.
{{% script file="./content/en/{VERSION}/getting-started/migrating-from-cas/scripts/step10-create-nodepool.sh" language="bash" %}}
Expand Down
2 changes: 1 addition & 1 deletion website/content/en/v0.32/reference/cloudformation.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ These descriptions should allow you to understand:
To download a particular version of `cloudformation.yaml`, set the version and use `curl` to pull the file to your local system:

```bash
export KARPENTER_VERSION=v0.32.7
export KARPENTER_VERSION=v0.32.8
curl https://raw.githubusercontent.com/aws/karpenter-provider-aws/"${KARPENTER_VERSION}"/website/content/en/preview/getting-started/getting-started-with-karpenter/cloudformation.yaml > cloudformation.yaml
```

Expand Down
Loading

0 comments on commit 7d35e14

Please sign in to comment.