Skip to content

Commit a7f5228

Browse files
feat: add flags for grafana and alert manager (#171)
set default to not install grafana or alert manager, add config option to enable install
1 parent 5ed0375 commit a7f5228

File tree

7 files changed

+34
-0
lines changed

7 files changed

+34
-0
lines changed

modules/common/o11y/stage2/alertmanager.tf

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
resource "kubernetes_manifest" "alertmanager" {
2+
count = var.enable_alertmanager ? 1 : 0
23
manifest = {
34
"apiVersion" = "monitoring.coreos.com/v1"
45
"kind" = "Alertmanager"

modules/common/o11y/stage2/grafana.tf

+3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
resource "kubernetes_config_map" "grafana_config" {
2+
count = var.enable_grafana ? 1 : 0
23
metadata {
34
name = "grafana-config"
45
namespace = var.namespace
@@ -18,6 +19,7 @@ resource "kubernetes_config_map" "grafana_config" {
1819
}
1920

2021
resource "kubernetes_stateful_set_v1" "grafana" {
22+
count = var.enable_grafana ? 1 : 0
2123
metadata {
2224
name = "grafana"
2325
namespace = var.namespace
@@ -163,6 +165,7 @@ resource "kubernetes_stateful_set_v1" "grafana" {
163165
}
164166

165167
resource "kubernetes_service" "grafana" {
168+
count = var.enable_grafana ? 1 : 0
166169
metadata {
167170
name = "grafana"
168171
namespace = var.namespace

modules/common/o11y/stage2/variables.tf

+12
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,15 @@ variable "storage_class" {
66
description = "storage class name to use for workload PVCs"
77
default = "gp"
88
}
9+
10+
variable "enable_grafana" {
11+
description = "Flag to enable or disable Grafana installation"
12+
type = bool
13+
default = false
14+
}
15+
16+
variable "enable_alertmanager" {
17+
description = "Flag to enable or disable Alertmanager installation"
18+
type = bool
19+
default = false
20+
}

stage2/.terraform.lock.hcl

+2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

stage2/env.auto.tfvars.example

+2
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,5 @@
88
# dmtrd_broker_urls = "redpanda-0.domain.name,redpanda-1.domain.name,redpanda-2.domain.name"
99
# dmtrd_consumer_monitor_name = "your-consumer-monitor-name"
1010
# dmtrd_consumer_cache_name = "your-consumer-cache-name"
11+
# enable_grafana = false
12+
# enable_alertmanager = false

stage2/main.tf

+2
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ module "o11y" {
4646
source = "../modules/common/o11y/stage2"
4747
namespace = var.dmtr_namespace
4848
storage_class = var.cloud_provider == "gcp" ? "hyperdisk-balanced" : "gp"
49+
enable_grafana = var.enable_grafana
50+
enable_alertmanager = var.enable_alertmanager
4951
}
5052

5153
module "dmtrd" {

stage2/variables.tf

+12
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,15 @@ variable "dmtrd_replicas" {
7878
default = 1
7979
description = "Amount of Demeter daemon replicas."
8080
}
81+
82+
variable "enable_grafana" {
83+
description = "Flag to enable or disable Grafana installation"
84+
type = bool
85+
default = false
86+
}
87+
88+
variable "enable_alertmanager" {
89+
description = "Flag to enable or disable Alertmanager installation"
90+
type = bool
91+
default = false
92+
}

0 commit comments

Comments
 (0)