Skip to content

Commit 013b597

Browse files
Google APIscopybara-github
authored andcommitted
feat: add support for disabling pod IP cidr overprovision
This feature requires special allowlisting for the projects. PiperOrigin-RevId: 522103451
1 parent 9f6f02b commit 013b597

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

google/container/v1/cluster_service.proto

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -891,6 +891,20 @@ message NodeNetworkConfig {
891891

892892
// Network bandwidth tier configuration.
893893
optional NetworkPerformanceConfig network_performance_config = 11;
894+
895+
// [PRIVATE FIELD]
896+
// Pod CIDR size overprovisioning config for the nodepool.
897+
//
898+
// Pod CIDR size per node depends on max_pods_per_node. By default, the value
899+
// of max_pods_per_node is rounded off to next power of 2 and we then double
900+
// that to get the size of pod CIDR block per node.
901+
// Example: max_pods_per_node of 30 would result in 64 IPs (/26).
902+
//
903+
// This config can disable the doubling of IPs (we still round off to next
904+
// power of 2)
905+
// Example: max_pods_per_node of 30 will result in 32 IPs (/27) when
906+
// overprovisioning is disabled.
907+
PodCIDROverprovisionConfig pod_cidr_overprovision_config = 13;
894908
}
895909

896910
// A set of Shielded Instance options.
@@ -1334,6 +1348,14 @@ message BinaryAuthorization {
13341348
EvaluationMode evaluation_mode = 2;
13351349
}
13361350

1351+
// [PRIVATE FIELD]
1352+
// Config for pod CIDR size overprovisioning.
1353+
message PodCIDROverprovisionConfig {
1354+
// Whether Pod CIDR overprovisioning is disabled.
1355+
// Note: Pod CIDR overprovisioning is enabled by default.
1356+
bool disable = 1;
1357+
}
1358+
13371359
// Configuration for controlling how IPs are allocated in the cluster.
13381360
message IPAllocationPolicy {
13391361
// Whether alias IPs will be used for pod IPs in the cluster.
@@ -1458,6 +1480,20 @@ message IPAllocationPolicy {
14581480
// The ipv6 access type (internal or external) when create_subnetwork is true
14591481
IPv6AccessType ipv6_access_type = 17;
14601482

1483+
// [PRIVATE FIELD]
1484+
// Pod CIDR size overprovisioning config for the cluster.
1485+
//
1486+
// Pod CIDR size per node depends on max_pods_per_node. By default, the value
1487+
// of max_pods_per_node is doubled and then rounded off to next power of 2 to
1488+
// get the size of pod CIDR block per node.
1489+
// Example: max_pods_per_node of 30 would result in 64 IPs (/26).
1490+
//
1491+
// This config can disable the doubling of IPs (we still round off to next
1492+
// power of 2)
1493+
// Example: max_pods_per_node of 30 will result in 32 IPs (/27) when
1494+
// overprovisioning is disabled.
1495+
PodCIDROverprovisionConfig pod_cidr_overprovision_config = 21;
1496+
14611497
// Output only. [Output only] The subnet's IPv6 CIDR block used by nodes and
14621498
// pods.
14631499
string subnet_ipv6_cidr_block = 22

0 commit comments

Comments
 (0)