File tree 6 files changed +51
-0
lines changed
6 files changed +51
-0
lines changed Original file line number Diff line number Diff line change @@ -33,3 +33,5 @@ See the file [example-usage](./example-usage) for an example of how to use this
33
33
| ` enable_workload_identity ` | A boolean to enable workload identity | ` false ` |
34
34
| ` enable_shielded_nodes ` | A boolean to enable cluster-wide shielded nodes | ` false ` |
35
35
| ` enable_node_local_dns_cache ` | A boolean to enable NodeLocal DNSCache | ` true ` |
36
+ | ` metering_bigquery_dataset ` | BigQuery dataset name to send GKE metering data to. Setting a value here implicitly enables GKE Usage Metering. | ` "" ` |
37
+ | ` enable_network_egress_metering ` | Boolean to turn on Network Egress Metering. Only useful if metering_bigquery_dataset variable is set. | ` false ` |
Original file line number Diff line number Diff line change @@ -96,3 +96,15 @@ variable "enable_node_local_dns_cache" {
96
96
description = " A boolean to enable NodeLocal DNSCache"
97
97
default = true
98
98
}
99
+
100
+ variable "metering_bigquery_dataset" {
101
+ type = string
102
+ description = " BigQuery dataset name to send GKE metering data to. Setting a value here implicitly enables GKE Usage Metering."
103
+ default = " "
104
+ }
105
+
106
+ variable "enable_network_egress_metering" {
107
+ type = bool
108
+ description = " Boolean to turn on Network Egress Metering. Only useful if metering_bigquery_dataset variable is set."
109
+ default = false
110
+ }
Original file line number Diff line number Diff line change 1
1
locals {
2
2
cluster_workload_identity_namespace = var. enable_workload_identity ? [" ${ var . project } .svc.id.goog" ] : []
3
+ metering_bigquery_dataset = length (var. metering_bigquery_dataset ) > 0 ? [var . metering_bigquery_dataset ] : []
3
4
}
4
5
5
6
resource "google_container_cluster" "cluster" {
@@ -59,6 +60,16 @@ resource "google_container_cluster" "cluster" {
59
60
}
60
61
}
61
62
63
+ dynamic "resource_usage_export_config" {
64
+ for_each = local. metering_bigquery_dataset
65
+ content {
66
+ enable_network_egress_metering = var. enable_network_egress_metering
67
+ bigquery_destination {
68
+ dataset_id = var. metering_bigquery_dataset
69
+ }
70
+ }
71
+ }
72
+
62
73
network_policy {
63
74
enabled = true
64
75
}
Original file line number Diff line number Diff line change @@ -32,3 +32,5 @@ See the file [example-usage](./example-usage) for an example of how to use this
32
32
| ` vpa_enabled ` | A boolean to enable VPA for the cluster | ` false ` |
33
33
| ` enable_workload_identity ` | A boolean to enable workload identity | ` false ` |
34
34
| ` enable_shielded_nodes ` | A boolean to enable cluster-wide shielded nodes | ` false ` |
35
+ | ` metering_bigquery_dataset ` | BigQuery dataset name to send GKE metering data to. Setting a value here implicitly enables GKE Usage Metering. | ` "" ` |
36
+ | ` enable_network_egress_metering ` | Boolean to turn on Network Egress Metering. Only useful if metering_bigquery_dataset variable is set. | ` false ` |
Original file line number Diff line number Diff line change @@ -90,3 +90,15 @@ variable "enable_shielded_nodes" {
90
90
description = " A boolean to enable cluster-wide shielded nodes"
91
91
default = false
92
92
}
93
+
94
+ variable "metering_bigquery_dataset" {
95
+ type = string
96
+ description = " BigQuery dataset name to send GKE metering data to. Setting a value here implicitly enables GKE Usage Metering."
97
+ default = " "
98
+ }
99
+
100
+ variable "enable_network_egress_metering" {
101
+ type = bool
102
+ description = " Boolean to turn on Network Egress Metering. Only useful if metering_bigquery_dataset variable is set."
103
+ default = false
104
+ }
Original file line number Diff line number Diff line change 1
1
locals {
2
2
cluster_workload_identity_namespace = var. enable_workload_identity ? [" ${ var . project } .svc.id.goog" ] : []
3
+ metering_bigquery_dataset = length (var. metering_bigquery_dataset ) > 0 ? [var . metering_bigquery_dataset ] : []
3
4
}
4
5
5
6
resource "google_container_cluster" "cluster" {
@@ -55,6 +56,17 @@ resource "google_container_cluster" "cluster" {
55
56
}
56
57
}
57
58
59
+
60
+ dynamic "resource_usage_export_config" {
61
+ for_each = local. metering_bigquery_dataset
62
+ content {
63
+ enable_network_egress_metering = var. enable_network_egress_metering
64
+ bigquery_destination {
65
+ dataset_id = var. metering_bigquery_dataset
66
+ }
67
+ }
68
+ }
69
+
58
70
network_policy {
59
71
enabled = true
60
72
}
You can’t perform that action at this time.
0 commit comments