You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As the OCI Helm chart is signed by [Cosign](https://github.com/sigstore/cosign) as part of the release process you can verify the chart before installing it by running the following command.
| serviceMonitor.endpointConfig | object |`{}`| Configuration on `http-metrics` endpoint for the ServiceMonitor. Not to be used to add additional endpoints. See the Prometheus operator documentation for configurable fields https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api-reference/api.md#endpoint|
91
91
| serviceMonitor.metricRelabelings | list |`[]`| Metric relabelings for the `http-metrics` endpoint on the ServiceMonitor. For more details on metric relabelings, see: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs|
92
92
| serviceMonitor.relabelings | list |`[]`| Relabelings for the `http-metrics` endpoint on the ServiceMonitor. For more details on relabelings, see: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config|
93
-
| settings | object |`{"batchIdleDuration":"1s","batchMaxDuration":"10s","clusterCABundle":"","clusterEndpoint":"","clusterName":"","disableDryRun":false,"eksControlPlane":false,"featureGates":{"nodeRepair":false,"reservedCapacity":true,"spotToSpotConsolidation":false},"interruptionQueue":"","isolatedVPC":false,"minValuesPolicy":"Strict","preferencePolicy":"Respect","reservedENIs":"0","vmMemoryOverheadPercent":0.075}`| Global Settings to configure Karpenter |
93
+
| settings | object |`{"batchIdleDuration":"1s","batchMaxDuration":"10s","clusterCABundle":"","clusterEndpoint":"","clusterName":"","disableDryRun":false,"eksControlPlane":false,"featureGates":{"nodeOverlay":false,"nodeRepair":false,"reservedCapacity":true,"spotToSpotConsolidation":false},"interruptionQueue":"","isolatedVPC":false,"minValuesPolicy":"Strict","preferencePolicy":"Respect","reservedENIs":"0","vmMemoryOverheadPercent":0.075}`| Global Settings to configure Karpenter |
94
94
| settings.batchIdleDuration | string |`"1s"`| The maximum amount of time with no new ending pods that if exceeded ends the current batching window. If pods arrive faster than this time, the batching window will be extended up to the maxDuration. If they arrive slower, the pods will be batched separately. |
95
95
| settings.batchMaxDuration | string |`"10s"`| The maximum length of a batch window. The longer this is, the more pods we can consider for provisioning at one time which usually results in fewer but larger nodes. |
96
96
| settings.clusterCABundle | string |`""`| Cluster CA bundle for TLS configuration of provisioned nodes. If not set, this is taken from the controller's TLS configuration for the API server. |
97
97
| settings.clusterEndpoint | string |`""`| Cluster endpoint. If not set, will be discovered during startup (EKS only). |
| settings.disableDryRun | bool |`false`| Disable dry run validation for EC2NodeClasses. |
100
100
| settings.eksControlPlane | bool |`false`| Marking this true means that your cluster is running with an EKS control plane and Karpenter should attempt to discover cluster details from the DescribeCluster API. |
101
-
| settings.featureGates | object |`{"nodeRepair":false,"reservedCapacity":true,"spotToSpotConsolidation":false}`| Feature Gate configuration values. Feature Gates will follow the same graduation process and requirements as feature gates in Kubernetes. More information here https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-alpha-or-beta-features.|
101
+
| settings.featureGates | object |`{"nodeOverlay":false,"nodeRepair":false,"reservedCapacity":true,"spotToSpotConsolidation":false}`| Feature Gate configuration values. Feature Gates will follow the same graduation process and requirements as feature gates in Kubernetes. More information here https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-alpha-or-beta-features.|
102
+
| settings.featureGates.nodeOverlay | bool |`false`| nodeOverlay is ALPHA and is disabled by default. Setting this will allow the use of node overlay to impact scheduling decisions |
102
103
| settings.featureGates.nodeRepair | bool |`false`| nodeRepair is ALPHA and is disabled by default. Setting this to true will enable node repair. |
103
104
| settings.featureGates.reservedCapacity | bool |`true`| reservedCapacity is BETA and is enabled by default. Setting this will enable native on-demand capacity reservation support. |
104
105
| settings.featureGates.spotToSpotConsolidation | bool |`false`| spotToSpotConsolidation is ALPHA and is disabled by default. Setting this to true will enable spot replacement consolidation for both single and multi-node consolidation. |
Copy file name to clipboardExpand all lines: website/content/en/docs/concepts/_index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,7 +52,7 @@ Karpenter deletes nodes when they are no longer needed.
52
52
*[**Finalizer**]({{<ref "disruption#manual-methods" >}}): Karpenter places a finalizer bit on each node it creates.
53
53
When a request comes in to delete one of those nodes (such as a TTL or a manual `kubectl delete node`), Karpenter will cordon the node, drain all the pods, terminate the EC2 instance, and delete the node object.
54
54
Karpenter handles all clean-up work needed to properly delete the node.
55
-
*[**Expiration**]({{<ref "disruption" >}}): Karpenter will mark nodes as expired and disrupt them after they have lived a set number of seconds, based on the NodePool's `spec.disruption.expireAfter` value. You can use node expiry to periodically recycle nodes due to security concerns.
55
+
*[**Expiration**]({{<ref "disruption" >}}): Karpenter will mark nodes as expired and disrupt them after they have lived a set number of seconds, based on the NodePool's `spec.template.spec.expireAfter` value. You can use node expiry to periodically recycle nodes due to security concerns.
56
56
*[**Consolidation**]({{<ref "disruption#consolidation" >}}): Karpenter works to actively reduce cluster cost by identifying when:
57
57
* Nodes can be removed because the node is empty
58
58
* Nodes can be removed as their workloads will run on other nodes in the cluster.
Copy file name to clipboardExpand all lines: website/content/en/docs/concepts/nodeclasses.md
+5-4Lines changed: 5 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -85,9 +85,6 @@ spec:
85
85
- id: sg-063d7acfb4b06c82c
86
86
87
87
# Optional, IAM role to use for the node identity.
88
-
# The "role" field is immutable after EC2NodeClass creation. This may change in the
89
-
# future, but this restriction is currently in place today to ensure that Karpenter
90
-
# avoids leaking managed instance profiles in your account.
91
88
# Must specify one of "role" or "instanceProfile" for Karpenter to launch nodes
92
89
role: "KarpenterNodeRole-${CLUSTER_NAME}"
93
90
@@ -709,6 +706,10 @@ For [private clusters](https://docs.aws.amazon.com/eks/latest/userguide/private-
709
706
710
707
{{% /alert %}}
711
708
709
+
{{% alert title="Warning" color="warning" %}}
710
+
When using `spec.instanceProfile`, ensure you are using pre-provisioned instance profiles that you manage yourself.
711
+
{{% /alert %}}
712
+
712
713
## spec.amiSelectorTerms
713
714
714
715
AMI Selector Terms are __required__ and are used to configure AMIs for Karpenter to use. AMIs are discovered through alias, id, owner, name, and [tags](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html).
@@ -765,7 +766,7 @@ The following commands can be used to determine the versions availble for an ali
0 commit comments