Skip to content

Commit

Permalink
feat: [container] add advanced_datapath_observability_config to monit…
Browse files Browse the repository at this point in the history
…oring_config (#4414)

* feat: add advanced_datapath_observability_config to monitoring_config

PiperOrigin-RevId: 547520012

Source-Link: googleapis/googleapis@8464e52

Source-Link: googleapis/googleapis-gen@ddd3271
Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNvbnRhaW5lci8uT3dsQm90LnlhbWwiLCJoIjoiZGRkMzI3MTQ5MTM1NTU5NTE2NmMyZDE4NWJjMjRiYzBiNGFhZTQxZiJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* feat: add advanced_datapath_observability_config to monitoring_config

--
feat: add a Pod IP Utilization API

Users can use `cluster describe` command to check the Pod IP ranges utilizations consumed by all the node pools within the same cluster. This percentage can be seen at cluster default Pod range, additional Pod ranges, and node pool level Pod ranges.

PiperOrigin-RevId: 547521835

Source-Link: googleapis/googleapis@1bd12d7

Source-Link: googleapis/googleapis-gen@cbb5fcc
Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNvbnRhaW5lci8uT3dsQm90LnlhbWwiLCJoIjoiY2JiNWZjYzFhYWQ5ZDMwZDlmNTFmNWJhZjA1Y2RkMmRhN2I2ZGE5YyJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

---------

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: sofisl <55454395+sofisl@users.noreply.github.com>
  • Loading branch information
3 people authored Jul 12, 2023
1 parent 58a5209 commit cb92854
Show file tree
Hide file tree
Showing 5 changed files with 1,954 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -615,6 +615,9 @@ message NodeKubeletConfig {
// Controls the maximum number of processes allowed to run in a pod. The value
// must be greater than or equal to 1024 and less than 4194304.
int64 pod_pids_limit = 4;

// Enable or disable Kubelet read only port.
optional bool insecure_kubelet_readonly_port_enabled = 7;
}

// Parameters that describe the nodes in a cluster.
Expand Down Expand Up @@ -917,6 +920,12 @@ message NodeNetworkConfig {
// Example: max_pods_per_node of 30 will result in 32 IPs (/27) when
// overprovisioning is disabled.
PodCIDROverprovisionConfig pod_cidr_overprovision_config = 13;

// Output only. [Output only] The utilization of the IPv4 range for the pod.
// The ratio is Usage/[Total number of IPs in the secondary range],
// Usage=numNodes*numZones*podIPsPerNode.
double pod_ipv4_range_utilization = 16
[(google.api.field_behavior) = OUTPUT_ONLY];
}

// A set of Shielded Instance options.
Expand Down Expand Up @@ -1178,6 +1187,9 @@ message AddonsConfig {

// Configuration for the Backup for GKE agent addon.
GkeBackupAgentConfig gke_backup_agent_config = 16;

// Configuration for the Cloud Storage Fuse CSI driver.
GcsFuseCsiDriverConfig gcs_fuse_csi_driver_config = 17;
}

// Configuration options for the HTTP (L7) load balancing controller addon,
Expand Down Expand Up @@ -1308,6 +1320,12 @@ message GcpFilestoreCsiDriverConfig {
bool enabled = 1;
}

// Configuration for the Cloud Storage Fuse CSI driver.
message GcsFuseCsiDriverConfig {
// Whether the Cloud Storage Fuse CSI driver is enabled for this cluster.
bool enabled = 1;
}

// Configuration for the Backup for GKE Agent.
message GkeBackupAgentConfig {
// Whether the Backup for GKE agent is enabled for this cluster.
Expand Down Expand Up @@ -1555,6 +1573,12 @@ message IPAllocationPolicy {
// IPAllocationPolicy.
AdditionalPodRangesConfig additional_pod_ranges_config = 24
[(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. [Output only] The utilization of the cluster default IPv4
// range for the pod. The ratio is Usage/[Total number of IPs in the secondary
// range], Usage=numNodes*numZones*podIPsPerNode.
double default_pod_ipv4_range_utilization = 25
[(google.api.field_behavior) = OUTPUT_ONLY];
}

// A Google Kubernetes Engine cluster.
Expand Down Expand Up @@ -2204,6 +2228,19 @@ message ClusterUpdate {
message AdditionalPodRangesConfig {
// Name for pod secondary ipv4 range which has the actual range defined ahead.
repeated string pod_range_names = 1;

// Output only. [Output only] Information for additional pod range.
repeated RangeInfo pod_range_info = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
}

// RangeInfo contains the range name and the range utilization by this cluster.
message RangeInfo {
// Output only. [Output only] Name of a range.
string range_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. [Output only] The utilization of the range.
double utilization = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}

// This operation resource represents operations that may have happened or are
Expand Down Expand Up @@ -3815,6 +3852,9 @@ message AutoprovisioningNodePoolDefaults {
// https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for
// available image types.
string image_type = 10;

// Enable or disable Kubelet read only port.
optional bool insecure_kubelet_readonly_port_enabled = 13;
}

// Contains information about amount of some resource in the cluster.
Expand Down Expand Up @@ -4467,7 +4507,7 @@ message DNSConfig {
// Use CloudDNS for DNS resolution.
CLOUD_DNS = 2;

// Use KubeDNS for DNS resolution
// Use KubeDNS for DNS resolution.
KUBE_DNS = 3;
}

Expand Down Expand Up @@ -4931,6 +4971,35 @@ message MonitoringConfig {
// Enable Google Cloud Managed Service for Prometheus
// in the cluster.
ManagedPrometheusConfig managed_prometheus_config = 2;

// Configuration of Advanced Datapath Observability features.
AdvancedDatapathObservabilityConfig advanced_datapath_observability_config =
3;
}

// AdvancedDatapathObservabilityConfig specifies configuration of observability
// features of advanced datapath.
message AdvancedDatapathObservabilityConfig {
// Supported Relay modes
enum RelayMode {
// Default value. This shouldn't be used.
RELAY_MODE_UNSPECIFIED = 0;

// disabled
DISABLED = 1;

// exposed via internal load balancer
INTERNAL_VPC_LB = 3;

// exposed via external load balancer
EXTERNAL_LB = 4;
}

// Expose flow metrics on nodes
bool enable_metrics = 1;

// Method used to make Relay available
RelayMode relay_mode = 2;
}

// NodePoolLoggingConfig specifies logging configuration for nodepools.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -922,7 +922,7 @@ message NodeNetworkConfig {
// overprovisioning is disabled.
PodCIDROverprovisionConfig pod_cidr_overprovision_config = 13;

// Output only. [Output only] The utilization of the IPv4 range for pod.
// Output only. [Output only] The utilization of the IPv4 range for the pod.
// The ratio is Usage/[Total number of IPs in the secondary range],
// Usage=numNodes*numZones*podIPsPerNode.
double pod_ipv4_range_utilization = 16
Expand Down Expand Up @@ -1647,7 +1647,7 @@ message IPAllocationPolicy {
[(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. [Output only] The utilization of the cluster default IPv4
// range for pod. The ratio is Usage/[Total number of IPs in the secondary
// range for the pod. The ratio is Usage/[Total number of IPs in the secondary
// range], Usage=numNodes*numZones*podIPsPerNode.
double default_pod_ipv4_range_utilization = 25
[(google.api.field_behavior) = OUTPUT_ONLY];
Expand Down Expand Up @@ -4895,7 +4895,7 @@ message DNSConfig {
// Use CloudDNS for DNS resolution.
CLOUD_DNS = 2;

// Use KubeDNS for DNS resolution
// Use KubeDNS for DNS resolution.
KUBE_DNS = 3;
}

Expand Down Expand Up @@ -5488,6 +5488,35 @@ message MonitoringConfig {
// Enable Google Cloud Managed Service for Prometheus
// in the cluster.
ManagedPrometheusConfig managed_prometheus_config = 2;

// Configuration of Advanced Datapath Observability features.
AdvancedDatapathObservabilityConfig advanced_datapath_observability_config =
3;
}

// AdvancedDatapathObservabilityConfig specifies configuration of observability
// features of advanced datapath.
message AdvancedDatapathObservabilityConfig {
// Supported Relay modes
enum RelayMode {
// Default value. This shouldn't be used.
RELAY_MODE_UNSPECIFIED = 0;

// disabled
DISABLED = 1;

// exposed via internal load balancer
INTERNAL_VPC_LB = 3;

// exposed via external load balancer
EXTERNAL_LB = 4;
}

// Expose flow metrics on nodes
bool enable_metrics = 1;

// Method used to make Relay available
RelayMode relay_mode = 2;
}

// NodePoolLoggingConfig specifies logging configuration for nodepools.
Expand Down
Loading

0 comments on commit cb92854

Please sign in to comment.