Skip to content

Commit 04b0501

Browse files
Google APIscopybara-github
authored andcommitted
feat: add Provisioning Request API
feat: add AutopilotConversionStatus docs: Improve NodePool documentation PiperOrigin-RevId: 583137228
1 parent e5dbeff commit 04b0501

1 file changed

Lines changed: 54 additions & 23 deletions

File tree

google/container/v1beta1/cluster_service.proto

Lines changed: 54 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3776,30 +3776,31 @@ message BlueGreenSettings {
37763776
// of Kubernetes labels applied to them, which may be used to reference them
37773777
// during pod scheduling. They may also be resized up or down, to accommodate
37783778
// the workload.
3779-
// These upgrade settings control the level of parallelism and the level of
3780-
// disruption caused by an upgrade.
3781-
//
3782-
// maxUnavailable controls the number of nodes that can be simultaneously
3783-
// unavailable.
3784-
//
3785-
// maxSurge controls the number of additional nodes that can be added to the
3786-
// node pool temporarily for the time of the upgrade to increase the number of
3787-
// available nodes.
3788-
//
3789-
// (maxUnavailable + maxSurge) determines the level of parallelism (how many
3790-
// nodes are being upgraded at the same time).
3791-
//
3792-
// Note: upgrades inevitably introduce some disruption since workloads need to
3793-
// be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
3794-
// this holds true. (Disruption stays within the limits of
3795-
// PodDisruptionBudget, if it is configured.)
3796-
//
3797-
// Consider a hypothetical node pool with 5 nodes having maxSurge=2,
3798-
// maxUnavailable=1. This means the upgrade process upgrades 3 nodes
3799-
// simultaneously. It creates 2 additional (upgraded) nodes, then it brings
3800-
// down 3 old (not yet upgraded) nodes at the same time. This ensures that
3801-
// there are always at least 4 nodes available.
38023779
message NodePool {
3780+
// These upgrade settings control the level of parallelism and the level of
3781+
// disruption caused by an upgrade.
3782+
//
3783+
// maxUnavailable controls the number of nodes that can be simultaneously
3784+
// unavailable.
3785+
//
3786+
// maxSurge controls the number of additional nodes that can be added to the
3787+
// node pool temporarily for the time of the upgrade to increase the number of
3788+
// available nodes.
3789+
//
3790+
// (maxUnavailable + maxSurge) determines the level of parallelism (how many
3791+
// nodes are being upgraded at the same time).
3792+
//
3793+
// Note: upgrades inevitably introduce some disruption since workloads need to
3794+
// be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
3795+
// this holds true. (Disruption stays within the limits of
3796+
// PodDisruptionBudget, if it is configured.)
3797+
//
3798+
// Consider a hypothetical node pool with 5 nodes having maxSurge=2,
3799+
// maxUnavailable=1. This means the upgrade process upgrades 3 nodes
3800+
// simultaneously. It creates 2 additional (upgraded) nodes, then it brings
3801+
// down 3 old (not yet upgraded) nodes at the same time. This ensures that
3802+
// there are always at least 4 nodes available.
3803+
//
38033804
// These upgrade settings configure the upgrade strategy for the node pool.
38043805
// Use strategy to switch between the strategies applied to the node pool.
38053806
//
@@ -3956,6 +3957,14 @@ message NodePool {
39563957
string policy_name = 3;
39573958
}
39583959

3960+
// QueuedProvisioning defines the queued provisioning used by the node pool.
3961+
message QueuedProvisioning {
3962+
// Denotes that this nodepool is QRM specific, meaning nodes can be only
3963+
// obtained through queuing via the Cluster Autoscaler ProvisioningRequest
3964+
// API.
3965+
bool enabled = 1;
3966+
}
3967+
39593968
// The name of the node pool.
39603969
string name = 1;
39613970

@@ -4039,6 +4048,9 @@ message NodePool {
40394048
// up-to-date value before proceeding.
40404049
string etag = 110;
40414050

4051+
// Specifies the configuration of queued provisioning.
4052+
QueuedProvisioning queued_provisioning = 112;
4053+
40424054
// Enable best effort provisioning for nodes
40434055
BestEffortProvisioning best_effort_provisioning = 113;
40444056
}
@@ -5475,13 +5487,32 @@ enum PrivateIPv6GoogleAccess {
54755487
// Master is the configuration for components on master.
54765488
message Master {}
54775489

5490+
// AutopilotConversionStatus represents conversion status.
5491+
message AutopilotConversionStatus {
5492+
// The current state of the conversion.
5493+
enum State {
5494+
// STATE_UNSPECIFIED indicates the state is unspecified.
5495+
STATE_UNSPECIFIED = 0;
5496+
5497+
// DONE indicates the conversion has been completed. Old node pools will
5498+
// continue being deleted in the background.
5499+
DONE = 5;
5500+
}
5501+
5502+
// Output only. The current state of the conversion.
5503+
State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
5504+
}
5505+
54785506
// Autopilot is the configuration for Autopilot settings on the cluster.
54795507
message Autopilot {
54805508
// Enable Autopilot
54815509
bool enabled = 1;
54825510

54835511
// Workload policy configuration for Autopilot.
54845512
WorkloadPolicyConfig workload_policy_config = 2;
5513+
5514+
// ConversionStatus shows conversion status.
5515+
AutopilotConversionStatus conversion_status = 3;
54855516
}
54865517

54875518
// WorkloadPolicyConfig is the configuration of workload policy for autopilot

0 commit comments

Comments
 (0)