From 54145b1d1fde5572c58e8522018855b2b1f95feb Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Fri, 9 Jun 2023 21:13:29 +0100 Subject: [PATCH 1/6] fix formatting --- scaletest/scaletest.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scaletest/scaletest.sh b/scaletest/scaletest.sh index f9f7fb7ca2ed4..c2a3a9daa9cfc 100755 --- a/scaletest/scaletest.sh +++ b/scaletest/scaletest.sh @@ -86,7 +86,7 @@ if [[ -z "${SCALETEST_PROMETHEUS_REMOTE_WRITE_USER}" ]] || [[ -z "${SCALETEST_PR echo "No prometheus metrics will be collected!" read -pr "Continue (y/N)? " choice case "$choice" in - y | Y | yes | YES) ;; + y|Y|yes|YES) ;; *) exit 1 ;; esac fi From b82e195105fc7539daca50690cb7b8852304c189 Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Fri, 9 Jun 2023 21:14:01 +0100 Subject: [PATCH 2/6] install prometheus-postgres-exporter --- scaletest/terraform/coder.tf | 4 +-- scaletest/terraform/gcp_db.tf | 10 ++++++ scaletest/terraform/prometheus.tf | 58 +++++++++++++++++++++++++++---- 3 files changed, 64 insertions(+), 8 deletions(-) diff --git a/scaletest/terraform/coder.tf b/scaletest/terraform/coder.tf index 44e7f4a374448..29e9ffef9fce7 100644 --- a/scaletest/terraform/coder.tf +++ b/scaletest/terraform/coder.tf @@ -34,11 +34,11 @@ resource "kubernetes_namespace" "coder_namespace" { ] } -resource "random_password" "postgres-admin-password" { +resource "random_password" "coder-postgres-password" { length = 12 } -resource "random_password" "coder-postgres-password" { +resource "random_password" "prometheus-postgres-password" { length = 12 } diff --git a/scaletest/terraform/gcp_db.tf b/scaletest/terraform/gcp_db.tf index b57002f2d2872..8855d24f6d82b 100644 --- a/scaletest/terraform/gcp_db.tf +++ b/scaletest/terraform/gcp_db.tf @@ -51,3 +51,13 @@ resource "google_sql_user" "coder" { # required for postgres, otherwise user fails to delete deletion_policy = "ABANDON" } + +resource "google_sql_user" "prometheus" { + project = var.project_id + instance = google_sql_database_instance.db.id + name = "${var.name}-prometheus" + type = "BUILT_IN" + password = random_password.prometheus-postgres-password.result + # required for postgres, otherwise user fails to delete + deletion_policy = "ABANDON" +} diff --git a/scaletest/terraform/prometheus.tf b/scaletest/terraform/prometheus.tf index 9054f6d7526b8..2fd88c0396f65 100644 --- a/scaletest/terraform/prometheus.tf +++ b/scaletest/terraform/prometheus.tf @@ -1,10 +1,14 @@ locals { - prometheus_helm_repo = "https://charts.bitnami.com/bitnami" - prometheus_helm_chart = "kube-prometheus" - prometheus_helm_version = null // just use latest - prometheus_release_name = "prometheus" - prometheus_namespace = "prometheus" - prometheus_remote_write_enabled = var.prometheus_remote_write_password != "" + prometheus_helm_repo = "https://charts.bitnami.com/bitnami" + prometheus_helm_chart = "kube-prometheus" + prometheus_helm_version = null // just use latest + prometheus_exporter_helm_repo = "https://prometheus-community.github.io/helm-charts" + prometheus_exporter_helm_chart = "prometheus-postgres-exporter" + prometheus_exporter_helm_version = null // use latest + prometheus_release_name = "prometheus" + prometheus_exporter_release_name = "prometheus-postgres-exporter" + prometheus_namespace = "prometheus" + prometheus_remote_write_enabled = var.prometheus_remote_write_password != "" } # Create a namespace to hold our Prometheus deployment. @@ -97,6 +101,48 @@ prometheus: ] } +resource "kubernetes_secret" "prometheus-postgres-password" { + type = "kubernetes.io/basic-auth" + metadata { + name = "prometheus-postgres" + namespace = kubernetes_namespace.prometheus_namespace.metadata.0.name + } + data = { + username = google_sql_user.prometheus.name + password = google_sql_user.prometheus.password + } +} + +# Install Prometheus Postgres exporter helm chart +resource "helm_release" "prometheus-exporter-chart" { + repository = local.prometheus_exporter_helm_repo + chart = local.prometheus_exporter_helm_chart + name = local.prometheus_exporter_release_name + namespace = local.prometheus_namespace + values = [< Date: Fri, 9 Jun 2023 21:20:01 +0100 Subject: [PATCH 3/6] shfmt --- scaletest/terraform/prometheus.tf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scaletest/terraform/prometheus.tf b/scaletest/terraform/prometheus.tf index 2fd88c0396f65..be7b3fc38ad86 100644 --- a/scaletest/terraform/prometheus.tf +++ b/scaletest/terraform/prometheus.tf @@ -104,7 +104,7 @@ prometheus: resource "kubernetes_secret" "prometheus-postgres-password" { type = "kubernetes.io/basic-auth" metadata { - name = "prometheus-postgres" + name = "prometheus-postgres" namespace = kubernetes_namespace.prometheus_namespace.metadata.0.name } data = { @@ -116,9 +116,9 @@ resource "kubernetes_secret" "prometheus-postgres-password" { # Install Prometheus Postgres exporter helm chart resource "helm_release" "prometheus-exporter-chart" { repository = local.prometheus_exporter_helm_repo - chart = local.prometheus_exporter_helm_chart - name = local.prometheus_exporter_release_name - namespace = local.prometheus_namespace + chart = local.prometheus_exporter_helm_chart + name = local.prometheus_exporter_release_name + namespace = local.prometheus_namespace values = [< Date: Fri, 9 Jun 2023 21:45:00 +0100 Subject: [PATCH 4/6] do the confirm in a way that shfmt likes --- scaletest/scaletest.sh | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/scaletest/scaletest.sh b/scaletest/scaletest.sh index c2a3a9daa9cfc..824370e2ed378 100755 --- a/scaletest/scaletest.sh +++ b/scaletest/scaletest.sh @@ -84,11 +84,10 @@ fi if [[ -z "${SCALETEST_PROMETHEUS_REMOTE_WRITE_USER}" ]] || [[ -z "${SCALETEST_PROMETHEUS_REMOTE_WRITE_PASSWORD}" ]]; then echo "SCALETEST_PROMETHEUS_REMOTE_WRITE_USER or SCALETEST_PROMETHEUS_REMOTE_WRITE_PASSWORD not specified." echo "No prometheus metrics will be collected!" - read -pr "Continue (y/N)? " choice - case "$choice" in - y|Y|yes|YES) ;; - *) exit 1 ;; - esac + read -p "Continue (y/N)? " -n1 -r + if [[ "${REPLY}" != "y" ]]; then + exit 1 + fi fi SCALETEST_SCENARIO_VARS="${PROJECT_ROOT}/scaletest/terraform/scenario-${SCALETEST_SCENARIO}.tfvars" From 873f280a8940c4c4f5f404f762c5b2f8fff67d8d Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Fri, 9 Jun 2023 21:59:05 +0100 Subject: [PATCH 5/6] Update scaletest/scaletest.sh Co-authored-by: Mathias Fredriksson --- scaletest/scaletest.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scaletest/scaletest.sh b/scaletest/scaletest.sh index 824370e2ed378..9677df05c99c4 100755 --- a/scaletest/scaletest.sh +++ b/scaletest/scaletest.sh @@ -85,7 +85,7 @@ if [[ -z "${SCALETEST_PROMETHEUS_REMOTE_WRITE_USER}" ]] || [[ -z "${SCALETEST_PR echo "SCALETEST_PROMETHEUS_REMOTE_WRITE_USER or SCALETEST_PROMETHEUS_REMOTE_WRITE_PASSWORD not specified." echo "No prometheus metrics will be collected!" read -p "Continue (y/N)? " -n1 -r - if [[ "${REPLY}" != "y" ]]; then + if [[ "${REPLY}" != [yY] ]]; then exit 1 fi fi From 3c15bda72fafd11521a93c09a68aa4017c4a1938 Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Fri, 9 Jun 2023 22:01:34 +0100 Subject: [PATCH 6/6] rm unnecessary version variables --- scaletest/terraform/prometheus.tf | 3 --- 1 file changed, 3 deletions(-) diff --git a/scaletest/terraform/prometheus.tf b/scaletest/terraform/prometheus.tf index be7b3fc38ad86..4c6f082e1c345 100644 --- a/scaletest/terraform/prometheus.tf +++ b/scaletest/terraform/prometheus.tf @@ -1,10 +1,8 @@ locals { prometheus_helm_repo = "https://charts.bitnami.com/bitnami" prometheus_helm_chart = "kube-prometheus" - prometheus_helm_version = null // just use latest prometheus_exporter_helm_repo = "https://prometheus-community.github.io/helm-charts" prometheus_exporter_helm_chart = "prometheus-postgres-exporter" - prometheus_exporter_helm_version = null // use latest prometheus_release_name = "prometheus" prometheus_exporter_release_name = "prometheus-postgres-exporter" prometheus_namespace = "prometheus" @@ -41,7 +39,6 @@ resource "helm_release" "prometheus-chart" { repository = local.prometheus_helm_repo chart = local.prometheus_helm_chart name = local.prometheus_release_name - version = local.prometheus_helm_version namespace = kubernetes_namespace.prometheus_namespace.metadata.0.name values = [< pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy