fix(eks-monitoring): kube-proxy scrape config and alert rule (#221)

* changes to just OTEL kube-proxy scrape job

* agree with koffir@ to implement kube-proxy by default

* re-added KubeProxyDown Prometheus alert rule

* added kube-proxy URL related stuff

* corrected kube-proxy stuff according to new structure

* Use SEMVER for flux now

* Run pre-commit

* Bump OTEL chart version

* Substitute URL path with SEMVER

* Run pre-commit

* Added kube-proxy config object

* Run pre-commit

* Use kube-proxy config object for dashboards

---------

Co-authored-by: Jens-Uwe Walther <waltju@amazon.com>
This commit is contained in:
Jens-Uwe Walther
2023-08-25 10:36:35 +02:00
committed by GitHub
parent 72e0d87fb4
commit 86cc9489d2
7 changed files with 121 additions and 138 deletions
+32 -8
View File
@@ -96,7 +96,7 @@ variable "flux_gitrepository_url" {
variable "flux_gitrepository_branch" {
description = "Flux GitRepository Branch"
type = string
default = "main"
default = "v0.2.0"
}
variable "flux_kustomization_path" {
@@ -465,37 +465,43 @@ variable "grafana_url" {
variable "grafana_cluster_dashboard_url" {
description = "Dashboard URL for Cluster Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/cluster.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/cluster.json"
}
variable "grafana_kubelet_dashboard_url" {
description = "Dashboard URL for Kubelet Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/kubelet.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/kubelet.json"
}
variable "grafana_kubeproxy_dashboard_url" {
description = "Dashboard URL for kube-proxy Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/kube-proxy/kube-proxy.json"
}
variable "grafana_namespace_workloads_dashboard_url" {
description = "Dashboard URL for Namespace Workloads Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/namespace-workloads.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/namespace-workloads.json"
}
variable "grafana_node_exporter_dashboard_url" {
description = "Dashboard URL for Node Exporter Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/nodeexporter-nodes.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/nodeexporter-nodes.json"
}
variable "grafana_nodes_dashboard_url" {
description = "Dashboard URL for Nodes Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/nodes.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/nodes.json"
}
variable "grafana_workloads_dashboard_url" {
description = "Dashboard URL for Workloads Grafana Dashboard JSON"
type = string
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/main/artifacts/grafana-dashboards/eks/infrastructure/workloads.json"
default = "https://raw.githubusercontent.com/aws-observability/aws-observability-accelerator/v0.2.0/artifacts/grafana-dashboards/eks/infrastructure/workloads.json"
}
variable "target_secret_name" {
@@ -517,7 +523,7 @@ variable "enable_adotcollector_metrics" {
}
variable "adothealth_monitoring_config" {
description = "Config object for API server monitoring"
description = "Config object for ADOT health monitoring"
type = object({
flux_gitrepository_name = string
flux_gitrepository_url = string
@@ -533,3 +539,21 @@ variable "adothealth_monitoring_config" {
# defaults are pre-computed in locals.tf, provide a full definition to override
default = null
}
variable "kubeproxy_monitoring_config" {
description = "Config object for kube-proxy monitoring"
type = 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
})
})
# defaults are pre-computed in locals.tf, provide a full definition to override
default = null
}