diff --git a/modules/eks-monitoring/README.md b/modules/eks-monitoring/README.md index 02e7915..3c2b787 100644 --- a/modules/eks-monitoring/README.md +++ b/modules/eks-monitoring/README.md @@ -70,7 +70,7 @@ See examples using this Terraform modules in the **Amazon EKS** section of [this | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [adot\_loglevel](#input\_adot\_loglevel) | Verbosity level for ADOT collector logs. This accepts (detailed\|normal\|basic), see https://aws-otel.github.io/docs/components/misc-exporters for mor infos. | `string` | `"normal"` | no | -| [adothealth\_monitoring\_config](#input\_adothealth\_monitoring\_config) | Config object for ADOT health monitoring |
object({
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
dashboards = object({
grafana_adothealth_dashboard_url = string
})
}) | `null` | no |
+| [adothealth\_monitoring\_config](#input\_adothealth\_monitoring\_config) | Config object for ADOT health monitoring | object({
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
dashboards = object({
health = string
})
}) | `null` | no |
| [apiserver\_monitoring\_config](#input\_apiserver\_monitoring\_config) | Config object for API server monitoring | object({
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
dashboards = object({
basic = string
advanced = string
troubleshooting = string
})
}) | `null` | no |
| [custom\_metrics\_config](#input\_custom\_metrics\_config) | Configuration object to enable custom metrics collection | map(object({
enableBasicAuth = bool
path = string
basicAuthUsername = string
basicAuthPassword = string
ports = string
droppedSeriesPrefixes = string
})) | `null` | no |
| [eks\_cluster\_id](#input\_eks\_cluster\_id) | EKS Cluster Id | `string` | n/a | yes |
@@ -115,7 +115,7 @@ See examples using this Terraform modules in the **Amazon EKS** section of [this
| [istio\_config](#input\_istio\_config) | Configuration object for ISTIO monitoring | object({
enable_alerting_rules = bool
enable_recording_rules = bool
enable_dashboards = bool
scrape_sample_limit = number
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
managed_prometheus_workspace_id = string
prometheus_metrics_endpoint = string
dashboards = object({
cp = string
mesh = string
performance = string
service = string
})
}) | `null` | no |
| [java\_config](#input\_java\_config) | Configuration object for Java/JMX monitoring | object({
enable_alerting_rules = bool
enable_recording_rules = bool
enable_dashboards = bool
scrape_sample_limit = number
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
grafana_dashboard_url = string
prometheus_metrics_endpoint = string
}) | `null` | no |
| [ksm\_config](#input\_ksm\_config) | Kube State metrics configuration | object({
create_namespace = bool
k8s_namespace = string
helm_chart_name = string
helm_chart_version = string
helm_release_name = string
helm_repo_url = string
helm_settings = map(string)
helm_values = map(any)
scrape_interval = string
scrape_timeout = string
}) | {
"create_namespace": true,
"helm_chart_name": "kube-state-metrics",
"helm_chart_version": "4.24.0",
"helm_release_name": "kube-state-metrics",
"helm_repo_url": "https://prometheus-community.github.io/helm-charts",
"helm_settings": {},
"helm_values": {},
"k8s_namespace": "kube-system",
"scrape_interval": "60s",
"scrape_timeout": "15s"
} | no |
-| [kubeproxy\_monitoring\_config](#input\_kubeproxy\_monitoring\_config) | Config object for kube-proxy monitoring | object({
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
dashboards = object({
grafana_kubeproxy_dashboard_url = string
})
}) | `null` | no |
+| [kubeproxy\_monitoring\_config](#input\_kubeproxy\_monitoring\_config) | Config object for kube-proxy monitoring | object({
flux_gitrepository_name = string
flux_gitrepository_url = string
flux_gitrepository_branch = string
flux_kustomization_name = string
flux_kustomization_path = string
dashboards = object({
default = string
})
}) | `null` | no |
| [logs\_config](#input\_logs\_config) | Configuration object for logs collection | object({
cw_log_retention_days = number
}) | {
"cw_log_retention_days": 90
} | no |
| [managed\_prometheus\_cross\_account\_role](#input\_managed\_prometheus\_cross\_account\_role) | Amazon Managed Prometheus Workspace's Account Role Arn | `string` | `""` | no |
| [managed\_prometheus\_workspace\_endpoint](#input\_managed\_prometheus\_workspace\_endpoint) | Amazon Managed Prometheus Workspace Endpoint | `string` | `""` | no |
diff --git a/modules/eks-monitoring/locals.tf b/modules/eks-monitoring/locals.tf
index 6233b4a..3fd532d 100644
--- a/modules/eks-monitoring/locals.tf
+++ b/modules/eks-monitoring/locals.tf
@@ -39,9 +39,9 @@ locals {
scrape_sample_limit = 1000
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
+ flux_gitrepository_name = var.flux_gitrepository_name
+ flux_gitrepository_url = var.flux_gitrepository_url
+ flux_gitrepository_branch = var.flux_gitrepository_branch
flux_kustomization_name = "grafana-dashboards-java"
flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/java"
@@ -60,9 +60,9 @@ locals {
scrape_sample_limit = 1000
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
+ flux_gitrepository_name = var.flux_gitrepository_name
+ flux_gitrepository_url = var.flux_gitrepository_url
+ flux_gitrepository_branch = var.flux_gitrepository_branch
flux_kustomization_name = "grafana-dashboards-nginx"
flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/nginx"
@@ -81,9 +81,9 @@ locals {
scrape_sample_limit = 1000
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
+ flux_gitrepository_name = var.flux_gitrepository_name
+ flux_gitrepository_url = var.flux_gitrepository_url
+ flux_gitrepository_branch = var.flux_gitrepository_branch
flux_kustomization_name = "grafana-dashboards-istio"
flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/istio"
@@ -100,42 +100,42 @@ locals {
apiserver_monitoring_config = {
# can be overriden by providing a config
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
- flux_kustomization_name = "grafana-dashboards-apiserver"
- flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/apiserver"
+ flux_gitrepository_name = try(var.apiserver_monitoring_config.flux_gitrepository_name, var.flux_gitrepository_name)
+ flux_gitrepository_url = try(var.apiserver_monitoring_config.flux_gitrepository_url, var.flux_gitrepository_url)
+ flux_gitrepository_branch = try(var.apiserver_monitoring_config.flux_gitrepository_branch, var.flux_gitrepository_branch)
+ flux_kustomization_name = try(var.apiserver_monitoring_config.flux_kustomization_name, "grafana-dashboards-apiserver")
+ flux_kustomization_path = try(var.apiserver_monitoring_config.flux_kustomization_path, "./artifacts/grafana-operator-manifests/eks/apiserver")
dashboards = {
- basic = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-basic.json"
- advanced = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-advanced.json"
- troubleshooting = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-troubleshooting.json"
+ basic = try(var.apiserver_monitoring_config.dashboards.basic, "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-basic.json")
+ advanced = try(var.apiserver_monitoring_config.dashboards.advanced, "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-advanced.json")
+ troubleshooting = try(var.apiserver_monitoring_config.dashboards.troubleshooting, "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/apiserver/apiserver-troubleshooting.json")
}
}
adothealth_monitoring_config = {
# can be overriden by providing a config
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
- flux_kustomization_name = "grafana-dashboards-adothealth"
- flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/adot"
+ flux_gitrepository_name = try(var.adothealth_monitoring_config.flux_gitrepository_name, var.flux_gitrepository_name)
+ flux_gitrepository_url = try(var.adothealth_monitoring_config.flux_gitrepository_url, var.flux_gitrepository_url)
+ flux_gitrepository_branch = try(var.adothealth_monitoring_config.flux_gitrepository_branch, var.flux_gitrepository_branch)
+ flux_kustomization_name = try(var.adothealth_monitoring_config.flux_kustomization_name, "grafana-dashboards-adothealth")
+ flux_kustomization_path = try(var.adothealth_monitoring_config.flux_kustomization_path, "./artifacts/grafana-operator-manifests/eks/adot")
dashboards = {
- health = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/adot/adothealth.json"
+ health = try(var.adothealth_monitoring_config.dashboards.health, "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/adot/adothealth.json")
}
}
kubeproxy_monitoring_config = {
# can be overriden by providing a config
- flux_gitrepository_name = "aws-observability-accelerator"
- flux_gitrepository_url = "https://github.com/aws-observability/aws-observability-accelerator"
- flux_gitrepository_branch = "v0.2.0"
- flux_kustomization_name = "grafana-dashboards-kubeproxy"
- flux_kustomization_path = "./artifacts/grafana-operator-manifests/eks/kube-proxy"
+ flux_gitrepository_name = try(var.kubeproxy_monitoring_config.flux_gitrepository_name, var.flux_gitrepository_name)
+ flux_gitrepository_url = try(var.kubeproxy_monitoring_config.flux_gitrepository_url, var.flux_gitrepository_url)
+ flux_gitrepository_branch = try(var.kubeproxy_monitoring_config.flux_gitrepository_branch, var.flux_gitrepository_branch)
+ flux_kustomization_name = try(var.kubeproxy_monitoring_config.flux_kustomization_name, "grafana-dashboards-kubeproxy")
+ flux_kustomization_path = try(var.kubeproxy_monitoring_config.flux_kustomization_path, "./artifacts/grafana-operator-manifests/eks/kube-proxy")
dashboards = {
- default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/kube-proxy/kube-proxy.json"
+ default = try(var.kubeproxy_monitoring_config.dashboards.default, "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/kube-proxy/kube-proxy.json")
}
}
}
diff --git a/modules/eks-monitoring/variables.tf b/modules/eks-monitoring/variables.tf
index c6d7483..ed37a02 100644
--- a/modules/eks-monitoring/variables.tf
+++ b/modules/eks-monitoring/variables.tf
@@ -544,7 +544,7 @@ variable "adothealth_monitoring_config" {
flux_kustomization_path = string
dashboards = object({
- grafana_adothealth_dashboard_url = string
+ health = string
})
})
@@ -562,7 +562,7 @@ variable "kubeproxy_monitoring_config" {
flux_kustomization_path = string
dashboards = object({
- grafana_kubeproxy_dashboard_url = string
+ default = string
})
})