Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(gke-cluster-standard): Add feature to setup cluster_autoscaling
Browse files Browse the repository at this point in the history
anthonyhaussman committed Nov 7, 2023

Verified

This commit was signed with the committer’s verified signature.
fwyzard Andrea Bocci
1 parent 211b8a0 commit 069b090
Showing 2 changed files with 29 additions and 0 deletions.
18 changes: 18 additions & 0 deletions modules/gke-cluster-standard/main.tf
Original file line number Diff line number Diff line change
@@ -123,13 +123,31 @@ resource "google_container_cluster" "cluster" {
content {
enabled = true

autoscaling_profile = var.cluster_autoscaling.autoscaling_profile

dynamic "auto_provisioning_defaults" {
for_each = var.cluster_autoscaling.auto_provisioning_defaults != null ? [""] : []
content {
boot_disk_kms_key = var.cluster_autoscaling.auto_provisioning_defaults.boot_disk_kms_key
disk_size = var.cluster_autoscaling.auto_provisioning_defaults.disk_size
disk_type = var.cluster_autoscaling.auto_provisioning_defaults.disk_type
image_type = var.cluster_autoscaling.auto_provisioning_defaults.image_type
oauth_scopes = var.cluster_autoscaling.auto_provisioning_defaults.oauth_scopes
service_account = var.cluster_autoscaling.auto_provisioning_defaults.service_account
dynamic "management" {
for_each = var.cluster_autoscaling.auto_provisioning_defaults.management != null ? [""] : []
content {
auto_repair = var.cluster_autoscaling.auto_provisioning_defaults.management.auto_repair
auto_upgrade = var.cluster_autoscaling.auto_provisioning_defaults.management.auto_upgrade
}
}
dynamic "shielded_instance_config" {
for_each = var.cluster_autoscaling.auto_provisioning_defaults.shielded_instance_config != null ? [""] : []
content {
enable_integrity_monitoring = var.cluster_autoscaling.auto_provisioning_defaults.shielded_instance_config.integrity_monitoring
enable_secure_boot = var.cluster_autoscaling.auto_provisioning_defaults.shielded_instance_config.secure_boot
}
}
}
}
dynamic "resource_limits" {
11 changes: 11 additions & 0 deletions modules/gke-cluster-standard/variables.tf
Original file line number Diff line number Diff line change
@@ -38,11 +38,22 @@ variable "backup_configs" {
variable "cluster_autoscaling" {
description = "Enable and configure limits for Node Auto-Provisioning with Cluster Autoscaler."
type = object({
autoscaling_profile = optional(string)
auto_provisioning_defaults = optional(object({
boot_disk_kms_key = optional(string)
disk_size = optional(number)
disk_type = optional(string)
image_type = optional(string)
oauth_scopes = optional(list(string))
service_account = optional(string)
management = optional(object({
auto_repair = optional(bool, true)
auto_upgrade = optional(bool, true)
}))
shielded_instance_config = object({
integrity_monitoring = optional(bool, true)
secure_boot = optional(bool, false)
})
}))
cpu_limits = optional(object({
min = number

0 comments on commit 069b090

Please sign in to comment.