Skip to content

Commit 9516e70

Browse files
Google APIscopybara-github
authored andcommitted
feat: A new message HugepagesConfig is added
feat: A new field `hugepages` is added to message `.google.container.v1.LinuxNodeConfig` feat: A new field `containerd_config` is added to message `.google.container.v1.NodeConfig` feat: A new field `enable_nested_virtualization` is added to message `.google.container.v1.AdvancedMachineFeatures` feat: A new message `ContainerdConfig` is added feat: A new field `satisfies_pzs` is added to message `.google.container.v1.Cluster` feat: A new field `satisfies_pzi` is added to message `.google.container.v1.Cluster` feat: A new value `ENTERPRISE` is added to enum `Mode` feat: A new field `node_kubelet_config` is added to message `.google.container.v1.NodePoolAutoConfig` feat: A new field `containerd_config` is added to message `.google.container.v1.NodeConfigDefaults` feat: A new field `node_kubelet_config` is added to message `.google.container.v1.NodeConfigDefaults` feat: A new field `desired_containerd_config` is added to message `.google.container.v1.ClusterUpdate` feat: A new field `desired_node_kubelet_config` is added to message `.google.container.v1.ClusterUpdate` feat: A new field `desired_node_pool_auto_config_kubelet_config` is added to message `.google.container.v1.ClusterUpdate` feat: A new field `accelerators` is added to message `.google.container.v1.UpdateNodePoolRequest` feat: A new field `containerd_config` is added to message `.google.container.v1.UpdateNodePoolRequest` feat: A new value `MPS` is added to enum `GPUSharingStrategy` feat: A new field `additive_vpc_scope_dns_domain` is added to message `.google.container.v1.DNSConfig` feat: A new value `CADVISOR` is added to enum `Component` feat: A new value `KUBELET` is added to enum `Component` docs: A comment for field `desired_private_cluster_config` in message `.google.container.v1.ClusterUpdate` is changed docs: A comment for field `in_transit_encryption_config` in message `.google.container.v1.NetworkConfig` is changed PiperOrigin-RevId: 641308642
1 parent fb4af42 commit 9516e70

1 file changed

Lines changed: 128 additions & 1 deletion

File tree

google/container/v1/cluster_service.proto

Lines changed: 128 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,15 @@ message LinuxNodeConfig {
532532
CGROUP_MODE_V2 = 2;
533533
}
534534

535+
// Hugepages amount in both 2m and 1g size
536+
message HugepagesConfig {
537+
// Optional. Amount of 2M hugepages
538+
optional int32 hugepage_size2m = 1 [(google.api.field_behavior) = OPTIONAL];
539+
540+
// Optional. Amount of 1G hugepages
541+
optional int32 hugepage_size1g = 2 [(google.api.field_behavior) = OPTIONAL];
542+
}
543+
535544
// The Linux kernel parameters to be applied to the nodes and all pods running
536545
// on the nodes.
537546
//
@@ -552,6 +561,10 @@ message LinuxNodeConfig {
552561

553562
// cgroup_mode specifies the cgroup mode to be used on the node.
554563
CgroupMode cgroup_mode = 2;
564+
565+
// Optional. Amounts for 2M and 1G hugepages
566+
optional HugepagesConfig hugepages = 3
567+
[(google.api.field_behavior) = OPTIONAL];
555568
}
556569

557570
// Parameters that can be configured on Windows nodes.
@@ -831,6 +844,9 @@ message NodeConfig {
831844
// Parameters for node pools to be backed by shared sole tenant node groups.
832845
SoleTenantConfig sole_tenant_config = 42;
833846

847+
// Parameters for containerd customization.
848+
ContainerdConfig containerd_config = 43;
849+
834850
// A map of resource manager tag keys and values to be attached to the nodes.
835851
ResourceManagerTags resource_manager_tags = 45;
836852

@@ -852,6 +868,9 @@ message AdvancedMachineFeatures {
852868
// multithreading (SMT) set this to 1. If unset, the maximum number of threads
853869
// supported per core by the underlying processor is assumed.
854870
optional int64 threads_per_core = 1;
871+
872+
// Whether or not to enable nested virtualization (defaults to false).
873+
optional bool enable_nested_virtualization = 2;
855874
}
856875

857876
// Parameters for node pool-level network config.
@@ -1080,6 +1099,53 @@ message SoleTenantConfig {
10801099
repeated NodeAffinity node_affinities = 1;
10811100
}
10821101

1102+
// ContainerdConfig contains configuration to customize containerd.
1103+
message ContainerdConfig {
1104+
// PrivateRegistryAccessConfig contains access configuration for
1105+
// private container registries.
1106+
message PrivateRegistryAccessConfig {
1107+
// CertificateAuthorityDomainConfig configures one or more fully qualified
1108+
// domain names (FQDN) to a specific certificate.
1109+
message CertificateAuthorityDomainConfig {
1110+
// GCPSecretManagerCertificateConfig configures a secret from
1111+
// [Google Secret Manager](https://cloud.google.com/secret-manager).
1112+
message GCPSecretManagerCertificateConfig {
1113+
// Secret URI, in the form
1114+
// "projects/$PROJECT_ID/secrets/$SECRET_NAME/versions/$VERSION".
1115+
// Version can be fixed (e.g. "2") or "latest"
1116+
string secret_uri = 1;
1117+
}
1118+
1119+
// List of fully qualified domain names (FQDN).
1120+
// Specifying port is supported.
1121+
// Wilcards are NOT supported.
1122+
// Examples:
1123+
// - my.customdomain.com
1124+
// - 10.0.1.2:5000
1125+
repeated string fqdns = 1;
1126+
1127+
// Certificate access config. The following are supported:
1128+
// - GCPSecretManagerCertificateConfig
1129+
oneof certificate_config {
1130+
// Google Secret Manager (GCP) certificate configuration.
1131+
GCPSecretManagerCertificateConfig
1132+
gcp_secret_manager_certificate_config = 2;
1133+
}
1134+
}
1135+
1136+
// Private registry access is enabled.
1137+
bool enabled = 1;
1138+
1139+
// Private registry access configuration.
1140+
repeated CertificateAuthorityDomainConfig
1141+
certificate_authority_domain_config = 2;
1142+
}
1143+
1144+
// PrivateRegistryAccessConfig is used to configure access configuration
1145+
// for private container registries.
1146+
PrivateRegistryAccessConfig private_registry_access_config = 1;
1147+
}
1148+
10831149
// Kubernetes taint is composed of three fields: key, value, and effect. Effect
10841150
// can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
10851151
//
@@ -1998,6 +2064,12 @@ message Cluster {
19982064

19992065
// GKE Enterprise Configuration.
20002066
EnterpriseConfig enterprise_config = 149;
2067+
2068+
// Output only. Reserved for future use.
2069+
optional bool satisfies_pzs = 152 [(google.api.field_behavior) = OUTPUT_ONLY];
2070+
2071+
// Output only. Reserved for future use.
2072+
optional bool satisfies_pzi = 153 [(google.api.field_behavior) = OUTPUT_ONLY];
20012073
}
20022074

20032075
// K8sBetaAPIConfig , configuration for beta APIs
@@ -2019,6 +2091,9 @@ message SecurityPostureConfig {
20192091

20202092
// Applies Security Posture features on the cluster.
20212093
BASIC = 2;
2094+
2095+
// Applies the Security Posture off cluster Enterprise level features.
2096+
ENTERPRISE = 3;
20222097
}
20232098

20242099
// VulnerabilityMode defines enablement mode for vulnerability scanning.
@@ -2056,6 +2131,11 @@ message NodePoolAutoConfig {
20562131
// Resource manager tag keys and values to be attached to the nodes
20572132
// for managing Compute Engine firewalls using Network Firewall Policies.
20582133
ResourceManagerTags resource_manager_tags = 2;
2134+
2135+
// NodeKubeletConfig controls the defaults for autoprovisioned node-pools.
2136+
//
2137+
// Currently only `insecure_kubelet_readonly_port_enabled` can be set here.
2138+
NodeKubeletConfig node_kubelet_config = 3;
20592139
}
20602140

20612141
// Subset of Nodepool message that has defaults.
@@ -2071,6 +2151,14 @@ message NodeConfigDefaults {
20712151

20722152
// Logging configuration for node pools.
20732153
NodePoolLoggingConfig logging_config = 3;
2154+
2155+
// Parameters for containerd customization.
2156+
ContainerdConfig containerd_config = 4;
2157+
2158+
// NodeKubeletConfig controls the defaults for new node-pools.
2159+
//
2160+
// Currently only `insecure_kubelet_readonly_port_enabled` can be set here.
2161+
NodeKubeletConfig node_kubelet_config = 6;
20742162
}
20752163

20762164
// ClusterUpdate describes an update to the cluster. Exactly one update can
@@ -2179,7 +2267,12 @@ message ClusterUpdate {
21792267
// Cluster-level Vertical Pod Autoscaling configuration.
21802268
VerticalPodAutoscaling desired_vertical_pod_autoscaling = 22;
21812269

2182-
// The desired private cluster configuration.
2270+
// The desired private cluster configuration. master_global_access_config is
2271+
// the only field that can be changed via this field.
2272+
// See also
2273+
// [ClusterUpdate.desired_enable_private_endpoint][google.container.v1.ClusterUpdate.desired_enable_private_endpoint]
2274+
// for modifying other fields within
2275+
// [PrivateClusterConfig][google.container.v1.PrivateClusterConfig].
21832276
PrivateClusterConfig desired_private_cluster_config = 25;
21842277

21852278
// The desired config of Intra-node visibility.
@@ -2288,6 +2381,9 @@ message ClusterUpdate {
22882381
// Desired Beta APIs to be enabled for cluster.
22892382
K8sBetaAPIConfig desired_k8s_beta_apis = 131;
22902383

2384+
// The desired containerd config for the cluster.
2385+
ContainerdConfig desired_containerd_config = 134;
2386+
22912387
// Enable/Disable Multi-Networking for the cluster
22922388
optional bool desired_enable_multi_networking = 135;
22932389

@@ -2300,6 +2396,13 @@ message ClusterUpdate {
23002396

23012397
// Enable/Disable Cilium Clusterwide Network Policy for the cluster.
23022398
optional bool desired_enable_cilium_clusterwide_network_policy = 138;
2399+
2400+
// The desired node kubelet config for the cluster.
2401+
NodeKubeletConfig desired_node_kubelet_config = 141;
2402+
2403+
// The desired node kubelet config for all auto-provisioned node pools
2404+
// in autopilot clusters and node auto-provisioning enabled clusters.
2405+
NodeKubeletConfig desired_node_pool_auto_config_kubelet_config = 142;
23032406
}
23042407

23052408
// AdditionalPodRangesConfig is the configuration for additional pod secondary
@@ -2759,6 +2862,11 @@ message UpdateNodePoolRequest {
27592862
// Parameters that can be configured on Windows nodes.
27602863
WindowsNodeConfig windows_node_config = 34;
27612864

2865+
// A list of hardware accelerators to be attached to each node.
2866+
// See https://cloud.google.com/compute/docs/gpus for more information about
2867+
// support for GPUs.
2868+
repeated AcceleratorConfig accelerators = 35;
2869+
27622870
// Optional. The desired [Google Compute Engine machine
27632871
// type](https://cloud.google.com/compute/docs/machine-types) for nodes in the
27642872
// node pool. Initiates an upgrade operation that migrates the nodes in the
@@ -2782,6 +2890,11 @@ message UpdateNodePoolRequest {
27822890
// Existing tags will be replaced with new values.
27832891
ResourceManagerTags resource_manager_tags = 39;
27842892

2893+
// The desired containerd config for nodes in the node pool.
2894+
// Initiates an upgrade operation that recreates the nodes with the new
2895+
// config.
2896+
ContainerdConfig containerd_config = 40;
2897+
27852898
// Specifies the configuration of queued provisioning.
27862899
NodePool.QueuedProvisioning queued_provisioning = 42;
27872900
}
@@ -4187,6 +4300,9 @@ message GPUSharingConfig {
41874300

41884301
// GPUs are time-shared between containers.
41894302
TIME_SHARING = 1;
4303+
4304+
// GPUs are shared between containers with NVIDIA MPS.
4305+
MPS = 2;
41904306
}
41914307

41924308
// The max number of containers that can share a physical GPU.
@@ -4406,6 +4522,7 @@ message NetworkConfig {
44064522
optional bool enable_fqdn_network_policy = 19;
44074523

44084524
// Specify the details of in-transit encryption.
4525+
// Now named inter-node transparent encryption.
44094526
optional InTransitEncryptionConfig in_transit_encryption_config = 20;
44104527

44114528
// Whether CiliumClusterwideNetworkPolicy is enabled on this cluster.
@@ -4669,6 +4786,10 @@ message DNSConfig {
46694786

46704787
// cluster_dns_domain is the suffix used for all cluster service records.
46714788
string cluster_dns_domain = 3;
4789+
4790+
// Optional. The domain used in Additive VPC scope.
4791+
string additive_vpc_scope_dns_domain = 5
4792+
[(google.api.field_behavior) = OPTIONAL];
46724793
}
46734794

46744795
// Constraints applied to pods.
@@ -5259,6 +5380,12 @@ message MonitoringComponentConfig {
52595380

52605381
// Statefulset
52615382
STATEFULSET = 12;
5383+
5384+
// CADVISOR
5385+
CADVISOR = 13;
5386+
5387+
// KUBELET
5388+
KUBELET = 14;
52625389
}
52635390

52645391
// Select components to collect metrics. An empty set would disable all

0 commit comments

Comments
 (0)