I am trying to create a GKE cluster of node size 1. However, it always create a cluster of 3 nodes. Why is that?
resource "google_container_cluster" "gke-cluster" {
  name = "sonarqube"
  location = "asia-southeast1"
  remove_default_node_pool = true
  initial_node_count = 1
}
resource "google_container_node_pool" "gke-node-pool" {
  name = "sonarqube"
  location = "asia-southeast1"
  cluster = google_container_cluster.gke-cluster.name
  node_count = 1
  node_config {
    machine_type = "n1-standard-1"
    metadata = {
      disable-legacy-endpoints = "true"
    }
    labels = {
      app = "sonarqube"
    }
  }
}
Ok, found I can do so using node_locations:
resource "google_container_cluster" "gke-cluster" {
  name = "sonarqube"
  location = "asia-southeast1"
  node_locations = [
    "asia-southeast1-a"
  ]
  remove_default_node_pool = true
  initial_node_count = 1
}
Without that, it seems GKE will create 1 node per zone.