Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions chart/values.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -1464,6 +1464,10 @@
"weight": {
"type": "integer",
"description": "Weight is the weight of this node pool."
},
"profile": {
"type": "string",
"description": "Profile references a NodeProfile applied to nodes created by this pool."
}
},
"additionalProperties": false,
Expand Down Expand Up @@ -3956,6 +3960,10 @@
"daemon": {
"$ref": "#/$defs/PrivateNodesDaemon",
"description": "Daemon holds configuration for the private nodes daemon that is deployed on the nodes."
},
"defaultProfile": {
"type": "string",
"description": "DefaultProfile is the name of a NodeProfile applied to nodes joining this vCluster that do not select one explicitly. Overridden by per-pool or per-node selection. Requires a platform connection to resolve."
}
},
"additionalProperties": false,
Expand Down Expand Up @@ -4006,6 +4014,10 @@
"controlPlaneLoadBalancer": {
"$ref": "#/$defs/ControlPlaneLoadBalancer",
"description": "ControlPlaneLoadBalancer holds configuration for the control plane load balancer. This is used to load balance the control plane traffic on the node to the control plane nodes.\nThis is useful to achieve true high availability for the control plane without having to deploy a separate load balancer."
},
"nodeName": {
"type": "string",
"description": "NodeName is the Kubernetes node name of the node this daemon runs on. Set automatically at join time; used by the daemon to read its own Node object."
}
},
"additionalProperties": false,
Expand Down Expand Up @@ -4859,6 +4871,10 @@
"quantity": {
"type": "integer",
"description": "Quantity is the number of desired nodes in this pool."
},
"profile": {
"type": "string",
"description": "Profile references a NodeProfile applied to nodes created by this pool."
}
},
"additionalProperties": false,
Expand Down
12 changes: 12 additions & 0 deletions config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,9 @@ type PrivateNodes struct {

// Daemon holds configuration for the private nodes daemon that is deployed on the nodes.
Daemon PrivateNodesDaemon `json:"daemon,omitempty"`

// DefaultProfile is the name of a NodeProfile applied to nodes joining this vCluster that do not select one explicitly. Overridden by per-pool or per-node selection. Requires a platform connection to resolve.
DefaultProfile string `json:"defaultProfile,omitempty"`
}

type PrivateNodesDaemon struct {
Expand All @@ -141,6 +144,9 @@ type PrivateNodesDaemon struct {
// ControlPlaneLoadBalancer holds configuration for the control plane load balancer. This is used to load balance the control plane traffic on the node to the control plane nodes.
// This is useful to achieve true high availability for the control plane without having to deploy a separate load balancer.
ControlPlaneLoadBalancer ControlPlaneLoadBalancer `json:"controlPlaneLoadBalancer,omitempty"`

// NodeName is the Kubernetes node name of the node this daemon runs on. Set automatically at join time; used by the daemon to read its own Node object.
NodeName string `json:"nodeName,omitempty"`
}

type ControlPlaneLoadBalancer struct {
Expand Down Expand Up @@ -232,6 +238,9 @@ type DynamicNodePool struct {

// Weight is the weight of this node pool.
Weight int `json:"weight,omitempty"`

// Profile references a NodeProfile applied to nodes created by this pool.
Profile string `json:"profile,omitempty"`
}

type DynamicNodePoolDisruption struct {
Expand Down Expand Up @@ -300,6 +309,9 @@ type StaticNodePool struct {

// Quantity is the number of desired nodes in this pool.
Quantity int `json:"quantity" jsonschema:"required"`

// Profile references a NodeProfile applied to nodes created by this pool.
Profile string `json:"profile,omitempty"`
}

// KarpenterRequirement defines a scheduling requirement for a dynamic node pool.
Expand Down
Loading