Skip to content

Commit cbde727

Browse files
committed
Add GKE specific service account to fix monitoring
1 parent ff0cc2a commit cbde727

File tree

3 files changed

+44
-9
lines changed

3 files changed

+44
-9
lines changed

gce-staging-1/main.tf

+8-7
Original file line numberDiff line numberDiff line change
@@ -84,20 +84,21 @@ module "gce_worker_group" {
8484
}
8585

8686
module "workers_1" {
87-
source = "../modules/gce_kubernetes"
88-
project = "${var.project}"
87+
source = "../modules/gce_kubernetes"
88+
8989
cluster_name = "workers-1"
90+
default_namespace = "${var.k8s_default_namespace}"
91+
network = "${data.terraform_remote_state.vpc.gce_network_main}"
9092
pool_name = "default"
93+
project = "${var.project}"
9194
region = "us-central1"
92-
network = "${data.terraform_remote_state.vpc.gce_network_main}"
9395
subnetwork = "${data.terraform_remote_state.vpc.gce_subnetwork_gke_cluster}"
94-
default_namespace = "${var.k8s_default_namespace}"
9596

96-
machine_type = "c2-standard-4"
97-
max_node_count = 10
98-
min_master_version = "1.14"
9997
node_locations = ["us-central1-b", "us-central1-c"]
10098
node_pool_tags = ["gce-workers"]
99+
max_node_count = 10
100+
machine_type = "c2-standard-4"
101+
min_master_version = "1.14"
101102
}
102103

103104
output "workers_service_account_emails" {

modules/gce_kubernetes/cluster.tf

+7-2
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,20 @@ resource "google_container_node_pool" "node_pool" {
4444
initial_node_count = 1
4545

4646
node_config {
47-
machine_type = "${var.machine_type}"
48-
tags = "${var.node_pool_tags}"
47+
machine_type = "${var.machine_type}"
48+
tags = "${var.node_pool_tags}"
49+
service_account = "${google_service_account.cluster_service_account.email}"
4950

5051
oauth_scopes = [
5152
"https://www.googleapis.com/auth/compute",
5253
"https://www.googleapis.com/auth/devstorage.read_only",
5354
"https://www.googleapis.com/auth/logging.write",
5455
"https://www.googleapis.com/auth/monitoring",
5556
]
57+
58+
metadata = {
59+
disable-legacy-endpoints = "true"
60+
}
5661
}
5762

5863
management {
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
resource "google_service_account" "cluster_service_account" {
2+
project = "${var.project}"
3+
account_id = "tf-gke-${var.cluster_name}"
4+
display_name = "Terraform-managed service account for cluster ${var.cluster_name}"
5+
}
6+
7+
resource "google_project_iam_member" "cluster_service_account-log_writer" {
8+
project = "${var.project}"
9+
role = "roles/logging.logWriter"
10+
member = "serviceAccount:${google_service_account.cluster_service_account.email}"
11+
}
12+
13+
resource "google_project_iam_member" "cluster_service_account-metric_writer" {
14+
project = "${var.project}"
15+
role = "roles/monitoring.metricWriter"
16+
member = "serviceAccount:${google_service_account.cluster_service_account.email}"
17+
}
18+
19+
resource "google_project_iam_member" "cluster_service_account-monitoring_viewer" {
20+
project = "${var.project}"
21+
role = "roles/monitoring.viewer"
22+
member = "serviceAccount:${google_service_account.cluster_service_account.email}"
23+
}
24+
25+
resource "google_project_iam_member" "cluster_service_account-gcr" {
26+
project = "${var.project}"
27+
role = "roles/storage.objectViewer"
28+
member = "serviceAccount:${google_service_account.cluster_service_account.email}"
29+
}

0 commit comments

Comments
 (0)